6

私は純粋な JUnit 4 テストを使用しており、クラスパスに属するいくつかの jar 内でそれらをコンパイルしています。クラスパスですべてのテストを実行したいと思います。

方法はありますか?

私のタスクは次のようになります。

<target name="test" description="All the tests">
    <junit fork="yes">
        <classpath> 
            <path refid="test.classpath" />
            <fileset dir="war/WEB-INF/lib/">
                <include name="*.jar"/>
            </fileset>
            <fileset dir="war/WEB-INF"/>
            <fileset dir="war"/>
        </classpath>
    <formatter type="plain" usefile="false" />

    </junit>
</target>
4

1 に答える 1

5

以下の例では、JUnit テストが "MyClassTest.java" のように "Test" というサフィックスで名前が付けられ、JUnit 4 jar ファイルがプロパティによって指定されたライブラリ ディレクトリにあると想定していますlib.dir。コンパイルされたテストを含む各 jar ファイルに対して、ZipFileSet<batchtest>を使用して、ネストされた要素内のテスト クラスを選択できます。正しいバージョンが使用されるように、JUnit 4 jar へのパスがクラスパスに含まれています。

<target name="test" description="All the tests.">
  <junit fork="true">
    <classpath>
      <fileset dir="war/WEB-INF/lib/" includes="**/*.jar" />
      <fileset dir="${lib.dir}" includes="junit*.jar" />
    </classpath>
    <batchtest haltonfailure="true">
      <zipfileset src="war/WEB-INF/lib/test.jar" includes="**/*Test.class" />
    </batchtest>
    <formatter type="plain" usefile="false" />
  </junit>
</target>
于 2012-09-02T21:41:39.560 に答える