您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
JUnit測試教程
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/8/26 14:42:48 ] 推薦標(biāo)簽:

TestSuite
一旦你創(chuàng)建了一些測試實例,下一步是要讓他們能一起運行。我們必須定義一個TestSuite。在JUnit中,這要求你在TestCase類中定義一個靜態(tài)的suite()方法。suite()方法像main()方法一樣,JUnit用它來執(zhí)行測試。在suite()方法中,你將測試實例加到一個TestSuite對象中,并返回這個TestSuite對象。一個TestSuite對象可以運行一組測試。TestSuite和TestCase都實現(xiàn)了Test接口(interface),而Test接口定義了運行測試所需的方法。這允許你用TestCase和TestSuite的組合創(chuàng)建一個TestSuite。這是為什么我們前面說TestCase,TestSuite以及TestSuite組成了一個composite Pattern的原因。例子如下:
public static Test suite() {
TestSuite suite= new TestSuite();
suite.addTest(new testCar("testGetWheels"));
suite.addTest(new testCar("testGetSeats"));
return suite;
}
從JUnit 2.0開始,有一種更簡單的動態(tài)定義測試實例的方法。你只需將類傳遞給TestSuite,JUnit會根據(jù)測試方法名自動創(chuàng)建相應(yīng)的測試實例。所以你的測試方法好取名為testXXX()。例子如下:
public static Test suite() {
return new TestSuite(testCar.class);
}
從JUnit的設(shè)計我們可看出,JUnit不僅可用于單元測試,也可用于集成測試。關(guān)于如何用JUnit進(jìn)行集成測試請參考相關(guān)資料。
為了兼容性的考慮,下面列出使用靜態(tài)方法的例子:
public static Test suite() {
TestSuite suite= new TestSuite();
suite.addTest(
new testCar("getWheels") {
protected void runTest() { testGetWheels(); }
}
);
suite.addTest(
new testCar("getSeats") {
protected void runTest() { testGetSeats(); }
}
);
return suite;
}
TestRunner
有了TestSuite我們可以運行這些測試了,JUnit提供了三種界面來運行測試
[Text UI] junit.textui.TestRunner
[AWT UI] junit.awtui.TestRunner
[Swing UI] junit.swingui.TestRunner
我們前面已經(jīng)看過文本界面了,下面讓我們來看一看圖形界面:

界面很簡單,鍵入類名-testCar。或在啟動UI的時候鍵入類名:
[Windows] d:>java junit.swingui.TestRunner testCar
[Unix] % java junit.swingui.TestRunner testCar
從圖形UI可以更好的運行測試可查單測試結(jié)果。還有一個問題需要注意:如果JUnit報告了測試沒有成功,JUnit會區(qū)分失。╢ailures)和錯誤(errors)。失敗是一個期望的被assert方法檢查到的結(jié)果。而錯誤則是意外的問題引起的,如ArrayIndexOutOfBoundsException。
由于TestRunner十分簡單,界面也比較直觀,故不多介紹。朋友們可自行參考相關(guān)資料。

上一頁123456下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd