我在以下JUnit任务中有许多测试失败。
<target name="test-main" depends="build.modules" description="Main Integration/Unit tests">
<junit fork="yes"
description="Main Integration/Unit Tests"
showoutput="true"
printsummary="true"
outputtoformatters="true">
<classpath refid="test-main.runtime.classpath"/>
<batchtest filtertrace="false" todir="${basedir}">
<fileset dir="${basedir}" includes="**/*Test.class" excludes="**/*MapSimulationTest.class"/>
</batchtest>
</junit>
</target>
如何告诉Junit输出每个测试的错误,以便查看堆栈跟踪并调试问题。
答案 0 :(得分:17)
您需要将formatter任务添加为batchtest任务的子项(而不是junit任务的直接子项)
格式化程序的语法是:
<formatter type="plain" usefile="false"/>
type
可以是plain
,brief
,xml
或failure
中的一个。
usefile="false"
要求Ant将输出发送到控制台。
向下滚动到http://ant.apache.org/manual/Tasks/junit.html上“格式化程序”中的h4以获取更多详细信息。
答案 1 :(得分:9)
答案是在标签中添加标签。
<target name="test-main" depends="build.modules" description="Main Integration/Unit tests">
<junit fork="yes"
description="Main Integration/Unit Tests"
showoutput="true"
printsummary="true"
outputtoformatters="true">
<classpath refid="test-main.runtime.classpath"/>
<batchtest filtertrace="false">
<fileset dir="${basedir}/out/test/common" includes="**/*Test.class" excludes="**/*MapSimulationTest.class"/>
<fileset dir="${basedir}/out/test/test-simulation" includes="**/*Test.class" excludes="**/*MapSimulationTest.class"/>
</batchtest>
<formatter type="brief" usefile="false"/>
</junit>
</target>