
- TestNG 教程
- TestNG - 首頁
- TestNG - 概述
- TestNG - 環境
- TestNG - 編寫測試
- TestNG - 基本註解
- TestNG - 執行流程
- TestNG - 執行測試
- TestNG - 套件測試
- TestNG - 忽略測試
- TestNG - 組測試
- TestNG - 異常測試
- TestNG - 依賴測試
- TestNG - 引數化測試
- TestNG - 執行 JUnit 測試
- TestNG - 測試結果
- TestNG - 註解轉換器
- TestNG - 斷言
- TestNG - 並行執行
- TestNG - 與 ANT 整合
- TestNG - 與 Eclipse 整合
- TestNG - TestNG 與 JUnit 的比較
- TestNG 有用資源
- TestNG - 快速指南
- TestNG - 有用資源
- TestNG - 討論
TestNG - 基本註解 - 引數
@Parameters 描述瞭如何將引數傳遞給 @Test 方法。主要有兩種方式可以為測試方法提供引數值
透過 testng XML 配置檔案
透過 DataProviders
以下是 @Listeners 註解支援的屬性列表
屬性 | 描述 |
---|---|
value |
用於填充此方法引數的變數列表。 |
@Parameters 註解可以放置在以下位置
在任何已經具有 @Test、@Before/After 或 @Factory 註解的方法上。
在測試類的一個建構函式上。每當需要例項化測試類時,TestNG 將使用在 testng.xml 中指定的引數值呼叫此特定建構函式。此功能可用於將類內部的欄位初始化為將在測試方法中使用的值。
建立測試用例類
讓我們看看如何使用 @Parameters 註解
建立一個 Java 測試類,例如,TestAnnotationParameter.java,位於 /work/testng/src 中。
向您的測試類新增一個測試方法 testparameter()。
向 testparameter() 方法新增一個 @Test 註解。指定 Java 方法的引數 firstName 應接收名為 first-name 的 XML 引數的值。此 XML 引數在 testng.xml 中定義。
以下是 TestAnnotationParameter.java 的內容。
import org.testng.annotations.Test; import org.testng.annotations.Parameters; public class TestAnnotationParameter { @Parameters({ "first-name" }) @Test public void testparameter(String firstName) { System.out.println("Invoked method testparameter with string " + firstName); } }
建立 testng.xml
接下來,讓我們在 /work/testng/src 中建立 testng.xml 檔案,以執行測試用例。此檔案以 XML 格式捕獲整個測試過程。此檔案使您可以輕鬆地在單個檔案中描述所有測試套件及其引數,您可以將其檢入程式碼庫或透過電子郵件傳送給同事。它還使您可以輕鬆地提取測試子集或拆分多個執行時配置(例如,testngdatabase.xml 將僅執行測試您的資料庫的測試)。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd"> <suite name="Suite"> <parameter name="first-name" value="TutorialsPoint"/> <test thread-count="5" name="Test"> <classes> <class name="TestAnnotationParameter"/> </classes> </test> <!-- Test --> </suite> <!-- Suite -->
使用 javac 編譯測試用例。
/work/testng/src$ javac TestAnnotationParameter.java
現在,執行 testng.xml,它將執行在 <test> 標籤中定義的測試用例。
/work/testng/src$ java org.testng.TestNG testng.xml
驗證輸出。
Invoked method testparameter with string TutorialsPoint =============================================== Suite Total tests run: 1, Passes: 1, Failures: 0, Skips: 0 ===============================================