JUnit 框架是 Java 語言單元測試當(dāng)前的一站式解決方案。這個(gè)框架值得稱贊,因?yàn)樗褱y試驅(qū)動(dòng)的開發(fā)思想介紹給 Java 開發(fā)人員并教給他們?nèi)绾斡行У鼐帉憜卧獪y試。但是,在過去的幾年中,JUnit 的改進(jìn)不大;所以,為當(dāng)今復(fù)雜的環(huán)境編寫測試已經(jīng)變成一個(gè)越來越困難的任務(wù),即 JUnit 必須與其他一些補(bǔ)充性測試框架集成起來。而 TestNG 是一個(gè)測試 Java 應(yīng)用程序的新框架。TestNG 不僅確實(shí)強(qiáng)大、創(chuàng)新、可擴(kuò)展、靈活,它還展示了 Java Annotations(JDK 5.0 中的重大新特性)的有趣應(yīng)用。
TestNG 的創(chuàng)造者是 Cedric Beust,他在 Java 編程領(lǐng)域非常出名,是 EJB 3 專家組的成員,也是其他一些流行的開源項(xiàng)目(例如 EJBGen 和 Doclipse)的創(chuàng)造者。
示例測試代碼:
package example1;
import org.testng.annotations.*;
public class SimpleTest {
@BeforeClass
public void setUp() {
// code that will be invoked when this test is instantiated
}
@Test(groups = { "fast" })
public void aFastTest() {
System.out.println("Fast test");
}
@Test(groups = { "slow" })
public void aSlowTest() {
System.out.println("Slow test");
}
}