從網(wǎng)上搜索測試用例的評審,也能搜出好多,我這里把自己能想到的或是借鑒于他人的都在這里進行總結和歸納。
測試用例的設計很重要,無論你采用的是敏捷測試還是傳統(tǒng)的開發(fā)模式,測試用例都應該要文檔化,并且根據(jù)項目的schedule,把握好粒度。而QA lead要根據(jù)項目的實際情況,先定好模板,制定好測試用例的編寫規(guī)范。測試用例設計出來,質量如何?這就需要對測試用例進行評審,這個過程非常重要,對測試人員的能力提高,測試效率的提高都有很好的作用。如果公司流程沒有這個硬性要求,項目再忙,也要抽出一定時間,召集相關人員開個哪怕是非正式的評審會議,大家一起討論用例并給出意見和建議,及時發(fā)現(xiàn)問題,并完善測試用例的設計。
何時進行用例的評審,一般情況下是在用例的初步設計完成之后進行評審,如果需要或時間允許,在整個詳細用例全部完成之后還會進行二次評審,三次評審等。
大體分文三個級別的評審:
a)部門評審,測試部門全體員工參與的評審。
b)公司評審,這里包括了項目經(jīng)理,需求分析人員,架構設計人員,開發(fā)人員和測試人員。
c)客戶評審,包括了客戶方的開發(fā)人員和測試人員。
測試用例的評審檢查單(Checklist for Test cases):
1)Has the correct template been used?(是否使用了正確的模板?)
2)Have all the scenarios specified in the requirement –explicit, implicit, nonfunctional and been converted into test conditions?(是否覆蓋了需求規(guī)格說明,包括內在需求和外在和非功能需求?)
3)Have the related areas that include possibly be affected by the implementation of the requirement been identified and included in the test cases?(case是否對需求變更的部分進行對應的調整和增加?)
4)Have the following details been filled up correctly? Requirement references, test procedure, expected result, priority, author’s name, date created…(測試用例是否正確填寫了測試對應的需求,測試步驟,預期結果,優(yōu)先級,作者姓名,創(chuàng)建日期等..)
5)Has the test date set, if required been generated appropriate? (測試用例是否包含測試數(shù)據(jù),測試數(shù)據(jù)的生成是否正確?)
6)Have the required negative scenario between identified in the test conditions? (是否包含了負面測試用例?)
7)Have the testing techniques—equivalence partitioning, boundary value analysis be used? (是否使用了等價類劃分和邊界值分析的測試方法?)
8)Have the steps been correctly given in appropriate sequence for each test scenario? (測試步驟是否被闡述清楚?)
9)Have the expected result been identified correctly? (預期結果是否表達正確?)
● Expected results should respond to the user actions given in each step/action.(每個步驟都應給出相應的測試結果)
● Ensure that too many things are not included to be verified under one expected output.(給出一個預期結果的驗證步驟不要太多)
● Ensure that separate cases are written for multiple verifications of the application’s behavior. (每條case最好驗證一個問題)
● Vague statements like “Appropriate message/value/screen” etc. should not be part of expected result. Every detail should be clearly spelt out. (預期結果中不要使用模糊的語言)