在一个项目中,我有一个用于所有应用程序源代码的文件夹 src 和一个用于所有 junit 测试的不同文件夹 test(两者都具有类似的包层次结构)。
现在我希望 Ant 可以运行 test 文件夹中的所有测试,bot 的问题是现在还包含 src 文件夹中文件名中带有“Test”的文件。
这是 build.xml 中的测试目标:
<target name="test" depends="build">
<mkdir dir="reports/tests" />
<junit fork="yes" printsummary="yes">
<formatter type="xml"/>
<classpath>
<path location="${build}/WEB-INF/classes"/>
<fileset dir="${projectname.home}/lib">
<include name="servlet-api.jar"/>
<include name="httpunit.jar"/>
<include name="Tidy.jar"/>
<include name="js.jar"/>
<include name="junit.jar"/>
</fileset>
</classpath>
<batchtest todir="reports/tests">
<fileset dir="${build}/WEB-INF/classes">
<include name="**/*Test.class"/>
</fileset>
</batchtest>
</junit>
</target>
我已将测试文件夹添加到构建目标:
<target name="build" depends="init,init-props,prepare">
<javac source="1.5" debug="true" destdir="${build}/WEB-INF/classes">
<src path="src" />
<src path="test" />
<classpath refid="classpath"/>
</javac>
</target>
最佳答案
将测试.class文件发布到单独的目录中,将此目录添加到<junit>
任务类路径并扫描该辅助目录以查找 **/*Test.class
.
关于java - Ant build.xml 与 junit 测试的布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2677288/