回归测试
回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。自动回归测试将大幅降低系统测试、维护升级等阶段的成本。回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试,在渐进和快速迭代开发中,新版本的连续发布使回归测试进行的更加频繁,而在极端编程方法中,更是要求每天都进行若干次回归测试。因此,通过选择正确的回归测试策略来改进回归测试的效率和有效性是很有意义的。简单概括:
回归测试是指重复以前的全部或部分的相同测试。新加入测试的模组,可能对软件其他的模快内部、外部会产生“副作用”,即软件产生了新的缺陷或错误。因此,必须要进行某些软件模块或程序进行测试和修正之后的再次测试。
回归测试的策略
对于一个软件开发项目来说,项目的测试者在实施测试的过程中会将所开发的测试用例保存到“测试用例库”中,并对其进行维护和管理。当得到一个软件的基线版本时,用于基线版本测试的所有测试用例就形成了基线测试用例库。在需要进行回归测试的时,就可根据所选择的回归测试策略,从基线测试用例库中提取合适的测试用例,组成回归测试包,通过运行回归测试包来实现回归测试。保存在基线测试用例库中的测试用例可能是自动测试的脚本,也可能是测试用例的手工实现成果。
回归测试需要时间、经费和人力来计划、实施和管理。为了在给定的开发预算和项目进度下,尽可能有效地进行回归测试,需要对测试用例库进行维护并依据一定的策略选择相应的回归测试包。
测试过程
(1) 识别出软件中被修改的部分;
(2) 从原基线测试用例库T中,排除所有不再适用的测试用例,确定那些对新的软件版本依然有效的测试用例,其结果是建立一个新的基线测试用例库T0。
(3)依据一定的策略从T0中选择测试用例测试被修改的软件。
(4)如必要,生成新的测试用例集T1, 用于测试T0无法充分测试的软件部分
(5)用T1执行修改后的软件。
注:第(2) 和第(3) 步测试验证修改是否破坏了现有的软件功能,第(4) 和第(5) 步测试验证修改工作本身。
作者:CHEN某人
原文链接:https://blog.csdn.net/juannys/article/details/110456423#comments_14171436