a. 完全正確也沒有可能出錯的數據,如:9除3 結果必須等于3
b. 可能有問題的邊緣數據,如:10除3 結果也必須等于3
c. 錯誤的數據,如:10除0 必須拋出異常
忽略testMultiple方法
代碼如下:
Java代碼
@Test(expected=ArithmeticException.class)
public void testDivide() {
assertEquals(3,Math.divide(9,3));
assertEquals(3,Math.divide(10,3));
Math.divide(10,0); //除數不能為0,會拋出異常
}
@Ignore(\"忽略乘法測試\")
@Test
public void testMultiple() {
}
@Test(expected=ArithmeticException.class)
public void testDivide() {
assertEquals(3,Math.divide(9,3));
assertEquals(3,Math.divide(10,3));
Math.divide(10,0); //除數不能為0,會拋出異常
}
@Ignore(\"忽略乘法測試\")
@Test
public void testMultiple() {
}
說明:
Junit4為測試方法增加了判斷異常的方式,避免了以前還要通過try/catch塊捕捉異常再拋出的復雜方式,簡單的這樣聲明“@Test(expected=ArithmeticException.class)”Junit4就會檢查此方法是否拋出ArithmeticException異常,如果拋出則測試通過,沒拋出則測試不通過(@Test標簽還有一些其他參數,例如超時測試@Test(timeout=1)這樣,但是由于并不能準確反應實際時間,所以應用較少,經過我測試誤差太大絕對不適合拿來做超時測試的)
@Ignore標簽會告訴Junit4忽略它所標注的方法,例如數據庫不可用時可以用此標注標注一些測試數據庫連接的方法來避免測試失敗。
3) 運行測試
系統會打開JUnit透視圖,如果測試全部通過,則顯示顏色條為綠色;我們將assertEquals(3,Math.divide(9,3));改成assertEquals(2,Math.divide(9,3));則顯示顏色條為紅色,我們可以對錯誤或者故障的地方進行追蹤。
4) 創建測試套件
測試套件可以將多個測試用例合在一起測試,將相關的測試用例合成一個測試套件,在做一個修改后,只需要運行測試套件就可以,不需要運行每一個測試用例。
Junit4沒有采用以前的套件測試方法,同樣使用annotation的方式來進行。簡單在你所要構建測試套件的包里創建一個文件,一般以包名+4Suite
下面我在上面的測試包中復制一下之前的測試類并且一個改名字叫做MathTestAnother,新建一個class類叫做Uitl4Suite,代碼如下:
Java代碼
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
/**
* @author bulargy.j.bai
* @創建時間:Mar 11, 2008
* @描述:util包的測試套件
文章來源于領測軟件測試網 http://www.kjueaiud.com/