Apache Ant を使用したテストの再生

このトピックで述べる手順を実行するには、コンピュータに Apache Ant がインストールされている必要があります。

Apache Ant を使用してテストを再生し、たとえば、テスト実行の HTML レポートを生成するには、SilkTestSuite クラスを使用します。Apache Ant を使用してキーワード駆動テストを再生するには、KeywordTestSuite クラスを使用します。Apache Ant を使用したキーワード駆動テストの再生についての詳細は、「Apache Ant を使用したキーワード駆動テストの再生」を参照してください。

  1. Apache Ant を使用してテストを実行するには、@SuiteClasses アノテーションを使用して JUnit テスト スイートを作成します。 たとえば、同じ Silk4J プロジェクトにある MyTestClass1 クラスと MyTestClass2 クラスにあるテストを実行する場合は、次のよな JUnit テスト スイート MyTestSuite を作成します。
    @RunWith(SilkTestSuite.class)
    @SuiteClasses({ MyTestClass1.class, MyTestClass2.class})
    public class MyTestSuite {
    
    }
  2. テストを含んだ Silk4J プロジェクトの build.xml ファイルを開きます。
  3. テストを実行するには、次のターゲットを build.xml ファイルに追加します。
    注: 次のサンプル コードは、Silk Test 15.5 以降で作成された Silk4J プロジェクトでのみ動作します。
    <target name="runTests" depends="compile">
      <condition property="agentRmiHost" value="">
        <not>
          <isset property="agentRmiHost" />
        </not>
      </condition>
      <condition property="silktest.configurationName" value="">
        <not>
          <isset property="silktest.configurationName" />
        </not>
      </condition>
      <mkdir dir="./reports"/>
      <junit printsummary="true" showoutput="true" fork="true">
        <sysproperty key="agentRmiHost" value="${agentRmiHost}" />
        <sysproperty key="silktest.configurationName" value="${silktest.configurationName}" />
        <classpath>
          <fileset dir="${output}">
            <include name="**/*.jar" />
          </fileset>
          <fileset dir="${buildlib}">
            <include name="**/*.jar" />
          </fileset>
        </classpath>
    
        <test name="MyTestSuite" todir="./reports"/>
      </junit>
    </target>
    JUnit タスクの詳細については、『https://ant.apache.org/manual/Tasks/junit.html』を参照してください。
  4. 省略可能:すべてのテストの XML レポートを作成するには、ターゲットに次のコードを追加します。
    <formatter type="xml" />
  5. 省略可能:XML レポートから HTML レポートを作成するには、ターゲットに次のコードを追加します。
    <junitreport todir="./reports">
      <fileset dir="./reports">
        <include name="TEST-*.xml" />
      </fileset>
      <report format="noframes" todir="./report/html" />
    </junitreport>
    JUnitReport タスクの詳細については、『https://ant.apache.org/manual/Tasks/junitreport.html』を参照してください。 完全なターゲットは、次のようになります。
    <target name="runTests" depends="compile">
    
      <mkdir dir="./reports"/>
      <junit printsummary="true" showoutput="true" fork="true">
        <sysproperty key="agentRmiHost" value="${agentRmiHost}" />
        <sysproperty key="silktest.configurationName" value="${silktest.configurationName}" />
        <classpath>
          <fileset dir="${output}">
            <include name="**/*.jar" />
          </fileset>
          <fileset dir="${buildlib}">
            <include name="**/*.jar" />
          </fileset>
        </classpath>
    
        <formatter type="xml" />
        
        <test name="MyTestSuite" todir="./reports"/>
      </junit>
      <junitreport todir="./reports">
        <fileset dir="./reports">
          <include name="TEST-*.xml" />
        </fileset>
        <report format="noframes" todir="./report/html" />
      </junitreport>
    </target>
  6. Eclipse からテストを実行するには、以下の手順を実行します。
    1. パッケージ・エクスプローラー で、build.xml ファイルを右クリックします。
    2. 実行 > Ant ビルド... を選択します。
    3. 構成の編集 ダイアログ ボックスの ターゲット タブで、runTests をチェックします。
    4. 実行 をクリックします。
コマンド ラインや CI サーバーからテストを実行することもできます。詳細については、『https://ant.apache.org/manual/running.html』および Silk4J ヘルプ の「CI (継続的インテグレーション) サーバーからのテストの再生」を参照してください。