- 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 - 基本註解 - 監聽器
@Test 註解將類或方法標記為測試的一部分。
以下是@Test註解支援的屬性列表
| 屬性 | 描述 |
|---|---|
alwaysRun |
如果設定為true,即使此測試方法依賴於失敗的方法,它也會始終執行。 |
dataProvider |
此測試方法的資料提供程式的名稱。 |
dataProviderClass |
查詢資料提供程式的類。如果未指定,則將在當前測試方法的類或其基類之一中查詢資料提供程式。如果指定此屬性,則資料提供程式方法需要在指定的類中是靜態的。 |
dependsOnGroups |
此方法依賴的組列表。 |
dependsOnMethods |
此方法依賴的方法列表。 |
description |
此方法的描述。 |
enabled |
此類/方法上的方法是否啟用。 |
expectedExceptions |
測試方法預期丟擲的異常列表。如果未丟擲異常或丟擲的異常與列表中的異常不同,則此測試將被標記為失敗。 |
groups |
此類/方法所屬的組列表。 |
invocationCount |
此方法應呼叫的次數。 |
invocationTimeOut |
所有invocationCounts累積時間內此測試所需的最大毫秒數。如果未指定invocationCount,則將忽略此屬性。 |
priority |
此測試方法的優先順序。較低的優先順序將首先安排。 |
successPercentage |
此方法預期的成功百分比 |
singleThreaded |
如果設定為true,則保證此測試類上的所有方法都在同一執行緒中執行。此屬性只能在類級別使用,如果在方法級別使用,則將被忽略。 |
timeOut |
此測試所需的最大毫秒數。 |
threadPoolSize |
此方法的執行緒池大小。該方法將根據invocationCount指定的多個執行緒呼叫。 |
建立測試用例類
讓我們看看如何使用@Test註解。
建立一個java測試類,例如,SimpleTestClass.java 在 /work/testng/src目錄下。
向測試類新增一個測試方法sum()。
向sum()方法新增@Test註解。
以下是SimpleTestClass.java的內容。
import org.testng.annotations.Test;
public class SimpleTestClass {
@Test
public void sum()
{
int sum=0;
int a=15;
int b=27;
sum=a+b;
System.out.println("sum="+sum);
}
}
建立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">
<test thread-count="5" name="Test">
<classes>
<class name="SimpleTestClass"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
使用javac編譯測試用例。
/work/testng/src$ javac SimpleTestClass.java TestListener.java
現在,執行testng.xml,它將執行在<test>標籤中定義的測試用例。
/work/testng/src$ java org.testng.TestNG testng.xml
驗證輸出。
sum=42 =============================================== Suite Total tests run: 1, Passes: 1, Failures: 0, Skips: 0 ===============================================