單元測試假成功和假失敗的避免方法 單元測試工具
1 基本信息
摘要:描述了單元測試要避免的幾個問題,并給出幾個最佳實踐建議。
2 假成功的單元測試
1. 問題描述:
在testXXX方法中,看到有這樣的測試代碼:
public void testInvoke(){
try{
…
assertEquals(a,b);
}
catch(Exception e){
…
}
}
2. 問題分析:
如果運行過程中沒有出現異常,整個流程不會有任何問題,JUnit也認為整個測試正常通過。
但是一旦try中的某段代碼運行出錯,我們會發現由于在assertEquals被調用之前就已經跳到catch中,所以assertEquals并沒有被執行,而catch及之后的代碼中并沒有相應的assertEquals語句,因此JUnit認為這個testXXX方法對應的測試用例正常通過,我們被結果欺騙了。
3. 解決方法:
將assertEquals語句移道try…catch之外,變成如下的代碼樣式:
public void testInvoke(){
Object a;
Object b;
try{
…
文章來源于領測軟件測試網 http://www.kjueaiud.com/