Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

TestNGのテストをAntで実行する

<!-- TestNGのJARファイルに含まれるtestngtasksファイルを指定する -->
<taskdef resource="testngtasks" classpath="lib/testng-5.8-jdk15.jar" />

<!-- 実行時のクラスパスに含めるJARファイルを指定する -->
<path id="run.cp">
  <fileset dir="lib" includes="*.jar"/>
</path>

<target name="run-tests">
  <testng classpathref="run.cp" haltOnfailure="true">
    <!-- テストクラスのクラスファイルをクラスパスに含める -->
    <classpath>
      <pathelement location="bin"/>
    </classpath>
    <!-- testng.xmlを指定する -->
    <xmlfileset dir="test" includes="testng.xml" />
  </testng>
</target>

testng.xmlではなくテストクラスを実行する場合、xmlfilesetではなくclassfileset要素を使います。

<classfileset dir="${test.build.dir}" includes="**/*.class" />