1. 程式人生 > 其它 >《手把手教你》系列基礎篇(八十二)-java+ selenium自動化測試-框架設計基礎-TestNG測試報告-上篇(詳解教程)

《手把手教你》系列基礎篇(八十二)-java+ selenium自動化測試-框架設計基礎-TestNG測試報告-上篇(詳解教程)

1.簡介

  其實前邊好像簡單的提到過測試報告,巨集哥覺得這部分比較重要,就著重講解和介紹一下。報告是任何測試執行中最重要的部分,因為它可以幫助使用者瞭解測試執行的結果、失敗點和失敗原因。另一方面,日誌記錄對於密切關注執行流程或在出現任何故障時進行除錯很重要。預設情況下,TestNG 會為其測試執行生成不同型別的報告。這包括一個 HTML 和一個 XML 報告輸出。TestNG 還允許其使用者編寫自己的報告程式並將其與 TestNG 一起使用。還有一個選項可以編寫自己的記錄器,TestNG 在執行時會通知這些記錄器。

2.使用 TestNG 生成報告的方法

(1)Listeners− 為了實現監聽器類,該類必須實現org.testng.ITestListener介面。當測試開始、完成、失敗、跳過或通過時,TestNG 在執行時通知這些類。

(2)IReporters− 為了實現一個報告類,該類必須實現一個org.testng.IReporter介面。當整個套件執行結束時呼叫這些類。包含整個測試執行資訊的物件在呼叫時傳遞給這個類。

3.HTML 和 XML 報告

TestNG 帶有某些預定義的偵聽器作為庫的一部分。這些偵聽器預設新增到任何測試執行中,併為任何測試執行生成不同的 HTML 和 XML 報告。報告預設在名為的資料夾下生成testoutput並且可以通過配置更改為任何其他資料夾。這些報告由特定於 TestNG 的某些 HTML 和 XML 報告組成。

3.1建立測試用例類

1.按照巨集哥前邊的方法,建立一個TestNG類,並命名為:TestReport。如下圖所示:

2.然後進行指令碼編輯,前面的測試類包含三個測試方法,其中testMethodOnetestMethodThree將在執行時通過,而testMethodTwo通過將false布林值傳遞給 Assert.assertTrue 方法而失敗,該方法用於測試中的真值條件。程式碼設計如下圖所示:

3.參考程式碼如下:

package library;

import org.testng.Assert;
import org.testng.annotations.Test;

/**
 * @author 北京-巨集哥
 * 
 * @公眾號:北京巨集哥
 * 
 * 《手把手教你》系列基礎篇(八十二)-java+ selenium自動化測試-框架設計基礎-TestNG測試報告-上篇(詳解教程)
 *
 * 2022年3月10日
 */

public class TestReport {

    @Test
    public void testMethodOne() {
        Assert.assertTrue(true);
    }

    @Test
    public void testMethodTwo() {
        Assert.assertTrue(false);
    }

    @Test(dependsOnMethods = { "testMethodTwo" })
    public void testMethodThree() {
        Assert.assertTrue(true);
    }
}

3.2建立testng.xml

1.在F:/workspace/Bjhg_Selenium/src中建立 testng.xml 執行測試用例。如下圖所示:

2.參考XML檔案內容如下:

<?xml version = "1.0" encoding = "UTF-8"?>
<suite name = "Simple HTML-XML Suite">
   <test name = "Simple HTML-XML test">
      <classes>
         <class name = "library.TestReport" />
      </classes>
   </test>
</suite>

3.3執行程式碼

1.選中testng.xml檔案,右鍵Run AS點選Test Suit執行。如下圖所示:

2.控制檯輸出,如下圖所示:

3.4HTML 報告

1.開啟專案的工作目錄:F:/workspace/Bjhg_Selenium/test-output 資料夾。在預設 Web 瀏覽器上開啟index.html。您將看到以下 HTML 報告,如下圖所示:

3.5 XML 檔案

1.在工作目錄下用系統的預設 XML 編輯器中開啟檔案/work/testng/src$/test-output/testing-results.xml,您將在 XML 檔案中看到以下內容 :

4.小結

 預設情況下,TestNG 會生成多個報告作為其測試執行的一部分。這些報告主要包括 TestNG HTML 報告、TestNG 可傳送電子郵件的報告、TestNG 報告 XML 和 JUnit 報告 XML 檔案。這些檔案可以在輸出報告資料夾(在本例中為 test-output)下找到。

通過將屬性useDefaultListeners的值設定為false ,可以在執行測試時禁用此預設報告生成。可以在使用 Ant 或 Maven 等構建工具時設定此屬性。