摘要

面向对象软件不同于传统的面向过程软件,其具有封装性、继承性和多态性。面向对象软件中类的方法中可能会调用其他类的对象,导致很难获取其他类的对象状态,并且由于其继承性和多态性,程序中可能存在多种执行路径,如果用传统方法生成测试用例,很难达到较高的测试覆盖率。针对这个问题,提出一种新的面向对象软件单元测试用例生成方法。这一方法基于改进的模拟退火遗传算法,使得优化过的测试序列可以覆盖到程序中更多的分支,生成的测试用例具有更高的覆盖率。通过实验验证方法的可行性,并与其他方法进行对比实验。实验结果证明该方法具有较高的分支覆盖率。