
- 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 - 斷言
在前面的章節中,我們使用 TestNG 執行了一些測試。我們沒有宣告測試的成功或失敗。如果測試在沒有丟擲任何異常的情況下完成,或者丟擲了預期的異常,則該測試被認為是成功的。
測試方法通常由可能丟擲異常的呼叫或各種斷言(使用 Java 的“assert”關鍵字)組成。TestNG 斷言測試人員決定測試是否成功,以及異常。TestNG 中的斷言是一種驗證預期結果和實際結果是否匹配的方法。
以下是 TestNG 斷言的通用語法
Assert.Method( actual, expected)
實際值: 測試人員獲得的實際值。
預期值: 您期望的值。
建立類
讓我們在這裡看一個斷言的例子。建立一個要測試的 Java 類,例如,MessageUtil.java,位於/work/testng/src目錄下。
/* * This class prints the given message on console. */ public class MessageUtil { private String message; //Constructor //@param message to be printed public MessageUtil(String message) { this.message = message; } // prints the message public String printMessage() { System.out.println(message); return message; } }
建立測試用例類
建立一個 Java 類,例如,TestAssertion.java,位於/work/testng/src目錄下。在這裡,我們斷言實際結果和預期結果。
import org.testng.Assert; import org.testng.annotations.Test; public class TestAssertion { String message = "Manisha"; MessageUtil messageUtil = new MessageUtil(message); @Test public void testPrintMessage() { Assert.assertEquals("Tutorialspoint", messageUtil.printMessage()); } }
前面的測試類包含兩個將在單獨執行緒中執行的測試方法。
建立 testng.xml
在/work/testng/src目錄下建立 testng.xml 來執行測試用例。
<?xml version = "1.0" encoding = "UTF-8"?> <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > <suite name = "Suite1"> <test name = "test1"> <classes> <class name = "TestAssertion"/> </classes> </test> </suite>
使用 javac 編譯 Java 檔案。
/work/testng/src$ javac TestAssertion.java MessageUtil.java
現在,執行 testng.xml。
/work/testng/src$ java org.testng.TestNG testng.xml
驗證輸出。
Manisha =============================================== Suite1 Total tests run: 1, Passes: 0, Failures: 1, Skips: 0 ===============================================
您可以檢視 /work/testng/src/test-output/index.html 以獲取詳細報告。您將看到如下所示的報告

廣告