如何快速劃分測試用例優(yōu)先級
在工程工期時間有限的情況下,怎么解決測試工期和全部測試用例執(zhí)行時間之間的矛盾呢?
怎么樣的設(shè)計才能算測試用例
引自:IEEE Standard 610 (1990):
A set of test inputs, execution conditions, and expected results developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requirement.
(IEEE Std 829-1983) Documentation specifying inputs, predicted results, and a setof execution conditions for a test item.
但是,當(dāng)每一次迭代中,執(zhí)行全部的測試用例很多時候變成了一個很難的事情。
劃分測試用例優(yōu)先級好處
沒有軟件系統(tǒng)是完美的,任何系統(tǒng)都有BUGS。但是每一次得迭代都有一個期望,測試工程師需要知道本次迭代的項目關(guān)系人的預(yù)期,找到對應(yīng)的目標(biāo)和風(fēng)險。
Sue Bartlett在“How to Find the Level of Quality Your Sponsor Wants”一文中描述了如何獲取上面說的的目標(biāo)和風(fēng)險。文章說在詳細(xì)的計劃、設(shè)計或者編碼前就明確質(zhì)量目標(biāo),這樣會更好的保證交付一個滿足預(yù)期質(zhì)量目標(biāo)的交付物。
Ross Collard指出10%到15%的測試用例發(fā)現(xiàn)被測系統(tǒng)的75%到90%的BUGS。
這也是二八原則,二八原則影響了軟件測試很多。
怎么劃分優(yōu)先級呢
我相信你肯定也遇見過如下場景,面對成百上千的測試用例,要挑選出一個最小的、最終要的、優(yōu)先級最高的測試用例集的時候卻無法下手。對測試用例進(jìn)行優(yōu)先級的定義并不容易,而且優(yōu)先級的定義在每一次迭代中或者迭代后都有可能修改。因此測試用例的優(yōu)先級是動態(tài)的。
1、 構(gòu)建驗證測試(BVT)
BVT也成為冒煙測試用例集。是每次測試開始allin投入前最希望被運(yùn)行得以確認(rèn)的測試用例集。
冒煙測試用例集的規(guī)則:如果該用例無法正確執(zhí)行成功,其他測試用例都沒有辦法執(zhí)行。如果滿足該條件的測試用例,那么就應(yīng)該納入冒煙測試用例集。
2、高優(yōu)先級
高優(yōu)先級測試用例集合是按照執(zhí)行頻度和業(yè)務(wù)功樹的根部分支的條件選入的。
高優(yōu)先級測試用例的規(guī)則:BVT中加入最常用的測試用例,用來驗證重要或者主干流程的功能穩(wěn)定、功能正確。測試用例中既包含了正確的數(shù)據(jù)流也包含了錯誤的數(shù)據(jù)流。
3、中優(yōu)先級
中優(yōu)先測試用例集合是按照執(zhí)行頻度和業(yè)務(wù)功樹的主要分支的條件選入的。
中優(yōu)先級測試用例的規(guī)則:在新迭代影響域(新功能區(qū)域)或者功能更加詳盡。測試用例包含了大多數(shù)方面的功能,其中除了有正確數(shù)據(jù)流和錯誤的數(shù)據(jù)流,還應(yīng)該有一些配置方面的測試。
4、低優(yōu)先級
低優(yōu)先測試用例集合是按照執(zhí)行頻度和業(yè)務(wù)功樹的根部分支的條件選入的。
低優(yōu)先級測試用例的規(guī)則:這個是最不頻繁的測試用例執(zhí)行的部分。但是低并不是說不執(zhí)行,不測試。只是在迭代的過程匯總,執(zhí)行頻率比較低,不常常被執(zhí)行。例如:錯誤消息,可用性,壓力和性能測試等。
開始劃分你的測試用例
1、粗狂劃分,任意標(biāo)注
將全部功能的正確性驗證(happy path)的測試用例定義為高優(yōu)先級;
將全部有錯誤或者有邊界值驗證的測試用例定義為中優(yōu)先級;
將其他定義為低優(yōu)先級(這里面主要是非功能測試用例)
2、Review每一個測試用例,升級或者降級
通過對每一個測試用例以及其優(yōu)先級的標(biāo)記的重新review,開了測試的重要性以及執(zhí)行頻度等,按照下面進(jìn)行降級處理。
將功能驗證測試分為兩組重要和非重要,將“不太重要”的功能驗證測試降級為中等優(yōu)先級;
將錯誤和邊界測試分為兩組重要和非重要。將“重要”錯誤和邊界測試推廣到高優(yōu)先級。
將非功能性測試分為兩組重要和非重要。將“重要”非功能性測試推廣到中等優(yōu)先級。
對每組高,中和低優(yōu)先級測試用例重復(fù)劃分和升級/降級過程,直到達(dá)到優(yōu)先級之間移動的測試用例數(shù)量變?yōu)?,終止。
3、 確定BVT
將高優(yōu)先級測試分為兩組,分別為致命和嚴(yán)重(如果出現(xiàn)bug就是致命bug,那么這條測試用例也設(shè)定為致命。將致命的測試用例歸并到BVT優(yōu)先級。
相對統(tǒng)計的優(yōu)先級分布BVT 10-15%,高20-30%,中等40-60%和低10-15%。

