6、实验及结果:

  实验采用了PC—lint代码检测工具,针对非法计算故障,对一个用C++编写的大约2万行代码的程序做了两组测试实验。当PC—lint给出警报点时,一般测试方法要对所有警报点进行测试,存在测试成本太高的情况。根据本文所给出的基于探索性测试的方法,可以在保证测试质量的基础上,减少测试成本。下图是实验数据统计

  试验一

  进行探索性试验时,测试人员的经验知识背景等方面会影响测试的效果,下面实验结果反应了两个经验不同的试验者测试结果的差异。

  试验二

  PC—lint工具给出的警报点存在误报和漏报的情况,但是一般已能涵盖大部分故障点,所以上述试验不考虑漏报的情况。

  7、结束语:

  探索性测试要求充分发挥测试人员的个人能力,把自身的经验技能及对系统的学习认知作为参考,灵活地经行测试设计和执行。本文模型把这些方面量化并以此构造适应度函数,理论上能够寻找低代价高覆盖的测试组合。但是在实践中,首先要解决的是检查点生成的任务,这需要一定的经验和理论指导,也是一个很有意义的研究点。另外,遗传算法有一定的缺陷,比如收敛过早等,可以把改进的算法应用到该模型中。

  本文作者创新点:采用量化处理的方法对探索性测试进行研究,并结合遗传算法对故障测试进行优化,为软件测试提供了一种新的思路和方法。