- 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 - HTML 和 XML 報告
TestNG 作為庫的一部分,帶有一些預定義的監聽器。這些監聽器預設新增到任何測試執行中,併為任何測試執行生成不同的 HTML 和 XML 報告。報告預設生成在名為 testoutput 的資料夾下,可以透過配置將其更改為任何其他資料夾。這些報告包含一些特定於 TestNG 的 HTML 和 XML 報告。
建立測試用例類
建立一個 Java 類,例如,SampleTest.java 在 /work/testng/src 中。
import org.testng.Assert;
import org.testng.annotations.Test;
public class SampleTest {
@Test
public void testMethodOne() {
Assert.assertTrue(true);
}
@Test
public void testMethodTwo() {
Assert.assertTrue(false);
}
@Test(dependsOnMethods = {"testMethodTwo"})
public void testMethodThree() {
Assert.assertTrue(true);
}
}
前面的測試類包含三個測試方法,其中testMethodOne 和 testMethodThree 執行時將透過,而testMethodTwo 透過傳遞 false 布林值到 Assert.assertTrue 方法(用於測試中的真值條件)而被設定為失敗。
建立 testng.xml
在 /work/testng/src 中建立 testng.xml 來執行測試用例。
<?xml version = "1.0" encoding = "UTF-8"?>
<suite name = "Simple HTML-XML Suite">
<test name = "Simple HTML-XML test">
<classes>
<class name = "SampleTest" />
</classes>
</test>
</suite>
使用 javac 編譯 SampleTest 類。
/work/testng/src$ javac SampleTest.java
現在,執行 testng.xml。
/work/testng/src$ java org.testng.TestNG testng.xml
驗證輸出。
=============================================== Simple HTML-XML Suite Total tests run: 3, Failures: 1, Skips: 1 ===============================================
現在,轉到 /work/testng/src/test-output 資料夾。在您的預設 Web 瀏覽器中開啟 index.html。您將看到以下 HTML 報告:
現在,在系統上的預設 XML 編輯器中開啟檔案 /work/testng/src$/test-output/testing-results.xml,您將在 XML 檔案中看到以下內容:
TestNG 預設情況下會生成多個報告作為其測試執行的一部分。這些報告主要包括 TestNG HTML 報告、TestNG 可傳送電子郵件的報告、TestNG 報告 XML 和 JUnit 報告 XML 檔案。這些檔案可以在輸出報告資料夾(在本例中為 test-output)中找到。
透過將屬性 useDefaultListeners 的值設定為 false,可以在執行測試時停用此預設報告生成。在使用 Ant 或 Maven 等構建工具時,可以設定此屬性。