一、動態(tài)測試用例編寫
1.分析因素
支付金額需要是數(shù)字,那如果輸入非數(shù)字例如字母a,會怎樣?這里有了名列前茅個因素(或維度),即是否是數(shù)字;數(shù)字有正有負,是否支持0和負數(shù)?這是第二個因素,即數(shù)字類型(考慮有理數(shù));支持小數(shù),就有了整數(shù)和小數(shù)之分,于是第三個因素是小數(shù)點位數(shù)。
需要說明的是,劃分并不是少數(shù)的。譬如第三個因素,可以從“是否是整數(shù)”的角度來劃分,也可以從“小數(shù)點位數(shù)”來劃分,是等價的。
2.劃分等價類
首先,分析完因素設計用例時,要保證每一個層級只考慮一個少數(shù)的因素,也是為了保證MECE。例如,上圖中的“正數(shù)”包含在“數(shù)字”中,而不能和它并列。
要保證每一個層級只考慮一個少數(shù)的因素
接下來對“整數(shù)”和“小數(shù)”進行等價類劃分。每個分支都根據MECE分析法劃分有效等價類和無效等價類,例如針對“小數(shù)”的劃分,支持小數(shù)點后2位有效數(shù)字,即1位和2位都可以,那輸入3位系統(tǒng)會如何提示?都要設計出來。
3.注意描述
失?。菏窃鯓邮??無效類有三種情況,所以具體是“無法輸入”,是“可以輸入但無法確認”,還是“可以輸入并確認但提示報錯”以及報什么錯,都要明確寫出來。因為有些面向最終用戶的關鍵系統(tǒng),用戶體驗很重要,不明確寫出來在測試時很難注意到細節(jié)。
同樣,成功了會怎樣?扣款是否正確,收款方能否收到,這些都是關鍵的驗證點。
當然,寫好一個完整項目的測試用例,離不開深入的需求分析。本節(jié)內容是在需求分析的基礎上,教你如何寫出覆蓋全面、邏輯清晰、可讀性好的用例,這也是復用和維護測試用例的基礎。如何衡量你的用例是否符合這些特征,這里提供三個tips:
和開發(fā)、產品、及資深測試對齊,看他們在覆蓋度上是否有補充;請資深測試人員審核你的用例,看是否有覺得不清晰不理解的地方;不定期回顧自己之前的用例,看是否有不清晰的地方。延伸閱讀:
二、測試用例如何管理
在說測試用例管理之前,首先要明確背景,即為什么要管理測試用例,我們在第二小節(jié)已經提到了,這里再詳細總結一下:
首先,一個測試用例可能既用于冒煙測試,又用于回歸測試,以及不同級別的回歸,需要一個方便的方法將其篩選出來;
業(yè)務系統(tǒng)會越來越復雜,有已經管理好的用例做參考,可以直觀了解到某個模塊涉及到的業(yè)務邏輯,有效避免漏測;
迭代開發(fā)時,要了解之前的邏輯。復用已有的測試用例,便于理解之前的業(yè)務邏輯,也避免了重復造輪子;
系統(tǒng)的重構,利用現(xiàn)有的用例,可以大大提升工作效率和質量。