1、背景:
日志分析系统,需要处理各种格式的日志,不同格式的日志的文件名字不同,且各有标准;
程序通过文件名字去判断此文件属于哪种日志类型(正则);
2、测试过程:
由于是系统迁移工作,正则都沿用老版本的正则,所以没考虑正则这块,且之前是两个系统执行,没有共同执行过;所以问题没有暴露出来;
问题还是巧合暴露的。。。完全是巧合的。
3、先看下面两条正则:
pattern.fcAccess=[0-9a-zA-Z]{7}3[0-9a-zA-Z]{2}_[-0-9a-zA-Z]*_[0-9]*\.log(\.gz)?
pattern.apache=[0-9a-zA-Z]{7}[235][0-9a-zA-Z]{2}_21_[0-9]*.log(.gz)?
问题:这两条正则有可能会匹配到同一个文件,导致不能正确区分日志类型;
例子如下:
pattern.apache:01057133n3_21_201303112002.log.gz
这条日志也满足fcaccess日志格式;
疑问:这样的测试点,对正则不太熟的情况下,纯做黑盒测试,发现问题有点困难~~~~~~
阅读(1973) | 评论(0) | 转发(0) |