Testng-executing-tests

提供:Dev Guides
移動先:案内検索

TestNG-テストの実行

テストケースは TestNG クラスを使用して実行されます。 このクラスは、TestNGフレームワークでテストを実行するための主要なエントリポイントです。 ユーザーは、独自のTestNGオブジェクトを作成し、次のようなさまざまな方法で呼び出すことができます-

  • 既存のtestng.xmlで。
  • 完全にJavaから作成された合成testng.xml上。
  • テストクラスを直接設定する。

また、どのグループを含めるか除外するか、パラメータを割り当てるなどを定義できます。 コマンドラインパラメータは-

  • -d outputdir:出力ディレクトリを指定します。
  • -testclass class_name:1つまたは複数のクラス名を指定します。
  • -testjar jar_name:テストを含むjarを指定します。
  • -sourcedir src1; src2:;ソースディレクトリの分離されたリスト(javadoc注釈が使用される場合にのみ使用)。
  • -ターゲット
  • -グループ
  • -testrunfactory
  • -リスナー

以下の例では、TestNGオブジェクトと既存のtestng.xmlを作成します。

クラスを作成する

*C:\> TestNG_WORKSPACE* に *MessageUtil.java* などのテスト対象のJavaクラスを作成します。
/*
* 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;
   }
}

テストケースクラスを作成する

  • SampleTest.java などのJavaテストクラスを作成します。

  • テストメソッドtestPrintMessage()をテストクラスに追加します。

  • 注釈@TestをメソッドtestPrintMessage()に追加します。

  • テスト条件を実装し、TestNGのassertEquals APIを使用して条件を確認します。

    *C:\> TestNG_WORKSPACE* にSampleTest.javaというJavaクラスファイルを作成します。
import org.testng.Assert;
import org.testng.annotations.Test;

public class SampleTest {

   String message = "Hello World";
   MessageUtil messageUtil = new MessageUtil(message);

   @Test
   public void testPrintMessage() {
      Assert.assertEquals(message, messageUtil.printMessage());
   }
}

testng.xmlを作成する

次に、 C:\> TestNG_WORKSPACE にtestng.xmlファイルを作成して、テストケースを実行します。 このファイルは、テスト全体をXMLでキャプチャします。 このファイルを使用すると、すべてのテストスイートとそのパラメーターを1つのファイルに簡単に記述でき、コードリポジトリで確認したり、同僚に電子メールで送信したりできます。 また、テストのサブセットを簡単に抽出したり、複数のランタイム構成を分割したりできます(たとえば、testngdatabase.xmlはデータベースを実行するテストのみを実行します)。

<?xml version = "1.0" encoding = "UTF-8"?>

<suite name = "Sample test Suite">
   <test name = "Sample test">
      <classes>
         <class name = "SampleTest"/>
      </classes>
   </test>
</suite>

javacを使用してテストケースをコンパイルします。

C:\TestNG_WORKSPACE>javac MessageUtil.java SampleTest.java

次に、testng.xmlを実行します。これにより、<test>タグで定義されたテストケースが実行されます。

C:\TestNG_WORKSPACE>java -cp "C:\TestNG_WORKSPACE" org.testng.TestNG testng.xml

出力を確認します。

Hello World

===============================================
Sample test Suite
Total tests run: 1, Failures: 0, Skips: 0
===============================================