一、 开展本课题的意义及工作内容:
回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的比重,软件开发的各个阶段都会进行多次回归测试。在渐进和快速迭代开发中,新版本的连续发布使回归测试更加频繁,甚至是要求每天都进行若干次回归测试。因此,选择正确的回归测试策略来改进回归测试的效率和有效性是非常有意义的。
回归测试主要解决的是怎样有效地确定修改受影响部分以及重利用测试用例库的问题。修改影响分析为测试用例的选择提供了依据,因此在进行回归测试选择之前,必须要确定修改以及修改受影响的部分。回归测试需要解决的四个基本问题对应于回归测试的过程如下:
1.修改影响分析: 鉴别修改和修改受影响的部分。
2.测试顺序: 重测影响部分的策略。
3. 覆盖标准: 重测部分的覆盖标准。
4. 测试用例库(Test Suite )的维护: 测试用例库的维护包括测试用例库的选择、重用和更新。
本文的重点是围绕上面的四个基本问题中的前两个, 即如何鉴别修改影响的部分和重测影响部分的策略做以下几方面的工作:
(1 )深入研究现有的回归 测试选择方法,包括面向 过程的回归测试选择方法和面向对象的回归测试选择方法。
(2)针对现有的面向对象回归测试选择方法的缺点,在本文中提出一种新的面向对象回归测试选择方法。这是一种基于高层到底层对程序的回归测试方法,在高层是对类源程序进行分析,构造类间关系图 (IRG ) ,然后用类间关系图分析修改类以及所影响的类。
(3)在底层是对修改的类以 及所影响的 类,用JIG 图构造类成员关系图,然后根据JIG 图来识别dangerous 边 (重新执行的边),从而选择测试用例。 对于选择的测试用例进行排序,提高代码的检测率。
(4)由以上的内容,提出一种针对JAVA 语言的回归测试框架。
|