一、TestNG簡介
TestNG是一個開源自動化測試框架,它受到JUnit和NUnit的啟發,而引入了許多新的創新功能,如依賴測試,分組概念,使測試更強大,更容易做到。 它旨在涵蓋所有類別的測試:單元,功能,端到端,集成等。
TestNG表示下一代(Next Generation的首字母)。 TestNG是類似於JUnit(特別是JUnit 4),但它不是一個JUnit擴展。它的靈感來源於JUnit。它的目的是優於JUnit的,尤其是當測試集成的類。 TestNG的創造者是Cedric Beust(塞德里克·博伊斯特)。TestNG消除了大部分的舊框架的限制,使開發人員能夠編寫更加靈活和強大的測試。 因為它在很大程度上借鑒了Java注解(JDK5.0引入的)來定義的測試,它也可以告訴你如何使用這個新功能在真實的Java語言生產環境中。
TestNG的特點
- 注解
- TestNG使用Java和面向對象的功能
- 支持綜合類測試(例如,默認情況下,沒有必要創建一個新的測試每個測試方法的類的實例)
- 獨立的編譯時間測試代碼運行時配置/數據信息
- 靈活的運行時配置
- 主要介紹“測試組”。當編譯測試,只要問TestNG運行所有的“前端”的測試,或“快”,“慢”,“數據庫”等
- 支持依賴測試方法,並行測試,負載測試,局部故障
- 靈活的插件API
- 支持多線程測試
二、eclipse集成testng有三種方法
在 Eclipse 中安裝 TestNG 插件,其軟件環境要求(Java 1.7 以上版本,Eclipse 4.2 以上)
1.在線安裝
方法一:點擊help-->install new software-->add,然后在name處輸入testng,在location輸入地址:http://beust.com/eclipse/,點擊確認。
項勾testng插件,點擊next,等待下載安裝,完成之后重啟 eclipse 即可。該方式可以選擇版本。
注意:在安裝插件的時候將下面的【contact all update sites during install to find required software】,將這個前面的勾去掉,不然在安裝插件的過程中,eclipse為去檢查所有的插件地址,速度會很慢。
2.通過Eclipse Marketplace安裝
方式一:打開help-->eclipse marketplace-->search,搜索testng,點擊install安裝即可。該方法自動更新最新版本,可能會出現版本不兼容的情況。
方式二:
進入TestNG官網地址:http://testng.org/,在官網上部導航區域點擊“Download”鏈接,該頁面介紹了集成TestNG的不同方式。在“Eclipse plug-in”區域,點擊【TestNG page on the Eclipse Market Place】。
在【TestNG for Eclipse】,點擊install按鈕,拖拽至Eclipse的工作空間,即可啟動Eclipse Marketplace進行安裝TestNG,在彈出窗口,勾選testng,點擊confirm,等待下載安裝,完成之后重啟 eclipse 即可。
3.離線安裝TestNG插件
受網絡等因素影響,在線安裝方式速度比較慢,可以通過如下方式離線安裝TestNG插件。
進入TestNG官網地址:http://testng.org/,在官網上部導航區域點擊“Download”鏈接,該頁面介紹了集成TestNG的不同方式。在“Eclipse plug-in”區域,點擊【https://beust.com/eclipse】。
進入testng插件各版本,點擊底部的zipped文件夾鏈接
選擇擇對應的版本,下載testng離線安裝插件
下載zip壓縮包
解壓壓縮包
- 把解壓后的features和plugins中的內容分別拷貝到eclipse對應的features和plugins文件夾;
- 或把解壓后的整個目錄拷貝到dropins中。
重啟Eclipse完成插件安裝
如果不想直接復制,可以參考【eclipse集成maven插件】中的link方式。
四、驗證testng插件安裝是否成功
方法一:打開Eclipse,新建-other,選擇“TestNG ->TestNG Class”。
方法二: 打開Window -> Preferences->TestNG
五、測試
新建一個 “Java Project”,右鍵 “Build Path” -> “Add Libraries” -> “TestNG”
3、 運行,得到結果報告
package testng01;
import org.testng.annotations.Test;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeTest;
public class testng1 {
@Test
public void f1() {
System.out.println("hello world");
System.out.println("testng1.f1()");
}
@AfterMethod
public void afterMethod() {
System.out.println("testng1.afterMethod()");
}
@BeforeClass
public void beforeClass() {
System.out.println("testng1.beforeClass()");
}
@BeforeTest
public void beforeTest() {
System.out.println("testng1.beforeTest()");
}
}
執行代碼
運行結果
testng插件安裝完畢!
參考:
https://www.cnblogs.com/xusweeter/p/6559196.html
https://blog.csdn.net/kdyyh/article/details/78483663