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