在有限的测试资源和时间的情况下,尽早尽快在测试对象查找出尽可能多的缺陷很大程度上是由如何制定测试用例优先级决定的,因此测试用例优先级在一个测试项目中至关重要。
一、测试优先级的划分
1、测试时间和资源有限,可能无法执行所有的测试用例,穷尽测试是不可能的。
2、首先执行最重要的测试用例,尽早尽快的发现尽可能多的缺陷,或者优先测试用户最需要的功能
3、测试用例优先级的划分和测试执行顺序的确定,取决于项目的特征,应用领域和客户的要求。
4、即使测试过早结束,也能保证在该时刻测试工作能达到最好的效果。
5、最重要的测试用将首先被执行,这样可以保证尽早发现最重要的问题。
二、测试优先级划分准则
1、使用频率或失效的概率:
系统的某些特定的被经常使用的功能优先级更高(若该功能包含了故障,其在被频繁使用而导致的概率将会很高,故该功能的用例具有更高的优先级)。
2、失效的风险
高风险失效的用例应该比低风险失效的用例具有更高的优先级(用户或客户在使用时,高风险失效导致的后果和造成的损失将更加严重)。
3、失效的可见性
失效对用户的可见性,是划分测试优先级的更进一步准则(尤其在交互系统中,用户可减的失效,例如:界面错误,会导致用户对产品的极度不信任)。
4、需求的优先级
系统对使用的用户来说,各个功能的重要性不同,某些不重要的功能对用户来说缺失该功能是致命的,但是有些功能,即使缺失,用户也是可以接受的。
5、质量特性
质量特性对用户也有不同的重要性,因此验证与重要质量特性是否一致的用例具有更高的优先级。
6、开发人员角度
能够导致系统或组件崩溃的测试用例具有更高的优先级。
7、测试对象的复杂性
复杂的程序的组件需要加强测试,因为开发人员可能在该位置引入更多的缺陷;但不是说简单的程序组件就可以忽视,该部分缺陷往往由于开发人员的粗心导致。
8、高项目风险的失效
存在高项目风险的缺陷应该尽早被发现(该类失效会导致大量的修正工作,并导致项目时间的明显延迟)。
9、缺陷的集群效应
在先前发现缺陷的位置可能会存在更多的缺陷。
三、划分测试优先级的优点
1、为每个测试用例划分测试优先级,在有限的时间和测试资源条件下,可以首先执行测试优先级高的用例,从而达到成本,质量的平衡。
2、根据前面版本测试的缺陷分布的情况,合理制定优先级策略,可以高效分配测试资源。