package net.zheng.junit.test;
public class Book {
private String id = null;
private String name = null;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
至此,用于測(cè)試的JavaBean編寫完成。
四、編寫測(cè)試用例
這里只用了一個(gè)類進(jìn)行測(cè)試,名為BookTest,該類繼承自junit.framework.TestCase類。BookTest類包含兩個(gè)用例,分別對(duì)應(yīng)該類的testId和testName方法,即每個(gè)方法實(shí)現(xiàn)了一個(gè)測(cè)試用例。注意,在JUnit中,junit.framework.TestCase的子類中每個(gè)用來(lái)實(shí)現(xiàn)測(cè)試用例的方法都必須以testXXX的格式來(lái)命名,這些方法在運(yùn)行時(shí)會(huì)被執(zhí)行。此外,BookTest還包括setUp和tearDown這兩個(gè)方法,前者在每個(gè)測(cè)試方法開(kāi)始之前執(zhí)行,多用來(lái)做初始化;后者在每個(gè)測(cè)試方法完成之后執(zhí)行,多用來(lái)清理資源。下面開(kāi)始編寫B(tài)ookTest。
請(qǐng)點(diǎn)擊“文件”->“新建文件”,打開(kāi)“新建文件”對(duì)話框:
確保“項(xiàng)目”選擇的是JUnitTest,然后在“類別”中選中JUnit類,在“文件類型”中選中現(xiàn)有類的測(cè)試,點(diǎn)擊“下一個(gè)”,進(jìn)入下一窗口:
選擇要測(cè)試的類,點(diǎn)擊“完成”,修改代碼如下:
package net.zheng.junit.test;
import junit.framework.TestCase;
import junit.framework.Assert;
public class BookTest extends TestCase {
Book book = null;
//建議為測(cè)試類創(chuàng)建構(gòu)造
public BookTest(String name) {
super(name);
}
protected void setUp() throws Exception {
//調(diào)用超類的setUp(),以確保測(cè)試環(huán)境被初始化
super.setUp();
System.out.println("測(cè)試開(kāi)始!");
book = new Book();
System.out.println("book對(duì)象被初始化!");
}
protected void tearDown() throws Exception {
System.out.println("book對(duì)象將被清理!");
book = null;
System.out.println("測(cè)試結(jié)束!");
//調(diào)用超類的tearDown(),以確保測(cè)試環(huán)境被清理
super.tearDown();
}
public void testId() {
book.setId("001"); //設(shè)置id屬性的值為001
//使用Assert查看id屬性的值是否為001
Assert.assertEquals("001", book.getId());
System.out.println("id屬性被測(cè)試!");
}
public void testName() {
book.setName("ASP"); //設(shè)置name屬性的值為ASP
//使用Assert查看name屬性的值是否為JSP,這是個(gè)必然出現(xiàn)錯(cuò)誤的測(cè)試
Assert.assertEquals("JSP", book.getName());
System.out.println("name屬性被測(cè)試!");
}
}