TestNG - 基本註解 - 工廠



@Factory 註解的方法允許在執行時根據某些資料集或條件建立測試。該方法必須返回 Object[]。

建立測試用例類

  • 建立一個 Java 測試類,例如,SimpleTestFactory.java

  • 在您的測試類中新增一個測試方法 testMethod()。

  • 在 testMethod() 方法上新增 @Test 註解。

/work/testng/src 中建立一個名為 SimpleTestFactory.java 的 Java 類檔案。

  import org.testng.annotations.Test;
  public class SimpleTestFactory {
    @Test
    public void testMethod(){
      System.out.println("Simple Test Method.");
      }
  }

建立工廠測試類

  • /work/testng/src 中建立另一個 Java 類,例如,TestAnnotationFactory.java

  • 在您的測試類中新增一個工廠方法 factoryMethod()。工廠方法必須返回一個 Object 類陣列 (Object[])

  • 在 factoryMethod() 方法上新增 @Factory 註解。

以下是 TestAnnotationFactory.java 的內容

  import org.testng.annotations.Test;
  import org.testng.annotations.Factory;

  public class TestAnnotationFactory {
    @Factory
    public Object[] factoryMethod() {
      return new Object[]{
        new SimpleTestFactory(),
        new SimpleTestFactory()
        };
    }
  }

建立 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="TestAnnotationFactory"/>
      </classes>
    </test> <!-- Test -->
  </suite> <!-- Suite -->

使用 javac 編譯測試用例。

/work/testng/src$ javac SimpleTestFactory.java TestAnnotationFactory.java

現在,執行 testng.xml,它將執行在 <test> 標籤中定義的測試用例。正如您所看到的,SimpleTestFactory 類中的測試方法執行了兩次。

/work/testng/src$ java org.testng.TestNG testng.xml

驗證輸出。

  Simple Test Method.
  Simple Test Method.

  ===============================================
  Suite
  Total tests run: 2, Passes: 2, Failures: 0, Skips: 0
  ===============================================
廣告

© . All rights reserved.