在eclipse里面開發junit真的很方便,只要在相應的類文件中點右鍵,"new"-->"junit test case"可以生成一個測試類,里面大都代碼都有了。
但要測試的方法的訪問權限要設為"public"
下面簡單介紹一下上邊用到的靜態類junit.framework.Assert。該類主要包含7個方法:
1.assertEquals()方法,用來查看對象中存的值是否是期待的值,與字符串比較中使用的equals()方法類似;
2.assertFalse()和assertTrue()方法,用來查看變量是是否為false或true,如果assertFalse()查看的變量的值是false則測試成功,如果是true則失敗,assertTrue()與之相反。
3.assertSame()和assertNotSame()方法,用來比較兩個對象的引用是否相等和不相等,類似于通過“==”和“!=”比較兩個對象;
4.assertNull()和assertNotNull()方法,用來查看對象是否為空和不為空。
部分代碼
public void testId() {
book.setId("001"); //設置id屬性的值為001
//使用Assert查看id屬性的值是否為001
Assert.assertEquals("001", book.getId());
System.out.println("id屬性被測試!");
}
public void testName() {
book.setName("ASP"); //設置name屬性的值為ASP
//使用Assert查看name屬性的值是否為JSP,這是個必然出現錯誤的測試
Assert.assertEquals("JSP", book.getName());
System.out.println("name屬性被測試!");
}
測試成功會顯示綠色進度條
測試不成功會顯示紅色進度條
public static void main(String[] args) {
//使用TestSuite組裝測試類
TestSuite ts = new TestSuite();
ts.addTestSuite(BookTest.class);
//textui,命令行方式
junit.textui.TestRunner.run(ts);
//swingui,Swing方式
//junit.swingui.TestRunner.run(ts.getClass());
//awtui,AWT方式
//junit.awtui.TestRunner.run(ts.getClass());
}
其中TestSuite是用來組織測試類的,通過其addTestSuite()方法將測試類添加到ts對象中,凡是添加到ts中的測試類都將在junit.textui.TestRunner.run()時被執行。此外,您也可以在定義ts對象時利用其構造函數將測試類添加給ts對象,例如:
TestSuite ts = new TestSuite(BookTest.class);
這并不會影響到后續使用addTestSuite()方法。再有,JUnit提供了三種運行方式,junit.textui.TestRunner是命令行方式的,junit.swingui.TestRunner和junit.awtui.TestRunner是可視化方式的,后兩個這里已經注釋掉了,如果您想查看效果,可以將注釋去掉。