如果我调用 test-all,我可以让 build.xml 报告由目标定义的所有类,但如果我只想运行几个目标,我的 Junit 报告只显示最后一个运行的类。
为了进一步解释,我的 build.xml “runAll”和“runTest”中有两个目标。当我执行 runAll 目标时,我的所有类都会显示在 Junit 报告中。当我使用 runTest 运行多个目标时,我的 junit 报告只显示最后一个运行的类。
这工作并报告所有课程:
ant test-all
这不会且仅报告最后一课:
ant testClass1 testClass2 testClass3
这是我在我的构建 xml 中为 runAll 运行的片段(这个有效):
<target name="runAll" depends="clean,compile, compileTests">
<taskdef resource="festjunittasks" classpathref="classpath" />
<mkdir dir="${report.dir}"/>
<mkdir dir="${results.dir}"/>
<mkdir dir="${htmlresults.dir}"/>
<!-- <mkdir dir="${iphone.dir}"/> -->
<junit forkmode="perTest" printsummary="yes" haltonfailure="no" haltonerror="no" maxmemory="4096m">
<classpath>
<path refid="classpath"/>
</classpath>
<formatter classname="org.fest.swing.junit.ant.ScreenshotOnFailureResultFormatter" extension=".xml" />
<batchtest fork="yes" todir="${results.dir}">
<fileset dir="${testclasses.dir}" includes="**/*Test*.class" />
</batchtest>
</junit>
<festreport todir="${report.dir}">
<classpath refid="classpath" />
<fileset dir="${results.dir}">
<include name="TEST-*.xml" />
</fileset>
<report format="frames" todir="${htmlresults.dir}/html" />
</festreport>
<copy todir="${history.dir}">
<fileset dir="${html.dir}"/>
</copy>
</target >
这是我的 runTest 的片段(这个只报告最后一堂课):
<target name="runTest" depends="clean,compile, compileTests">
<taskdef resource="festjunittasks" classpathref="classpath" />
<mkdir dir="${report.dir}"/>
<mkdir dir="${results.dir}"/>
<mkdir dir="${htmlresults.dir}"/>
<!-- <mkdir dir="${iphone.dir}"/> -->
<junit forkmode="perTest" printsummary="yes" haltonfailure="no" haltonerror="no" maxmemory="4096m">
<classpath>
<path refid="classpath"/>
</classpath>
<formatter classname="org.fest.swing.junit.ant.ScreenshotOnFailureResultFormatter" extension=".xml" />
<batchtest fork="yes" todir="${results.dir}">
<fileset dir="${testclasses.dir}" includes="**/${test.to.run}" />
</batchtest>
</junit>
<festreport todir="${report.dir}">
<classpath refid="classpath" />
<fileset dir="${results.dir}">
<include name="TEST-*.xml" />
</fileset>
<report format="frames" todir="${htmlresults.dir}/html" />
</festreport>
<copy todir="${history.dir}">
<fileset dir="${html.dir}"/>
</copy>
</target >
提前致谢