转:回归测试用例选择方法

2010-05-21  赵艺骅 

  先说什么是回归测试, 顾名思义,回归测试就是修改完bug之后对程序的新的一轮测试。据微 软的统计,按照他们的经验,一般开发人员解决3~4个bug 会衍生出一个新的bug,这就是必须作回归测试的原因。

   简单的说,就是检测一下解决了bug之后有没有带进新的问题,以免把聋子给治成哑巴,就得不偿失了~~

  一般的软件测试的 流程是后期快速迭代的,bug在后期是快速收敛的,debug和测试的周期也是越来越短,频率是越来越高,譬如说第一轮测试需要花上10 天跑用例,那么到后期就没那么长的时间,可能就是1~2天的测试时间,在后期有时候一天就有一个新的版本,这时候就要求测试人员能快速的进行一轮回归测 试。

  一般来说,覆盖越高,风险越低,但是效率就越差,反之亦然。所以如果时间允许的话,能把所有的用例都再跑一边是最好不过的,但是一 般不会有那么多的时间,这就需要在效率和覆盖之间有一个适当的平衡,选择其中一部分测试用例用来作回归测试。

  选择回归测试的时 候,首先要确定的是,回归测试用例的比例,这个要根据时间情况了,100%是最好了,我个人一般这个比例在60%左右。然后要确定回归测试用例的优先级。 根据我的经验,一般有如下必须回归的用例:

  第一,新修改的功能,这个显然是重点;

  第二,新修改的功能的关联功能,就 是有耦合的部分,这个一般最好咨询一下开发人员;

  第三,程序最有卖点或者说亮点的部分,这个地方一旦有问题,会使程序质量大打折扣;

   第四,程序中最致命的部分,譬如说安全隐患,数据泄露,加密注册;

  第五,程序中比较脆弱的部分,这个要咨询开发人员,一般就是他们心 中最没底的地方;

  第六,程序的主干功能;

  第七,如果以上做完,还有时间的话,最好把用例中级别比较高的用例再执行一 遍。

  以上是回归测试用例的选择优先级。

  其实,即使这样做,还是有风险的。最根本的解决方法是自动化测试工 具加上手工测试。具体就是常用的程序主干功能,主要功能,用自动化测试,保证每一个版本都能够执行一遍,其 他修改频繁的小功能手工测试了。

  总结一下,解决回归测试的终极解决方案就是:

   a.作每日构建

  b.基线功能自动化

  c.编写用例时一定要分级(按照风险度,常用度,重要度)

  d. 手工执行回归测试用例(就是上面说的7项)

417°/4133 人阅读/4 条评论 发表评论

张平  2010-05-21

不错不错


夏洁  2010-05-21

我看测试书籍 里常提到“构建”是不是就是写程序时编译连接得到的一个BUILD?


周文静  2010-05-22

这都是理想化的,开发人员未必能配合测试人员提供这方面的帮助.


李如月  2010-05-23

如果在公司经济成本可以的情况下,其实我觉得回归测试还是用自动化比较好!


登录 后发表评论