如何在 Ant 中使用并行任务



您好,我正在处理通过 Ant 调用逐个运行测试的应用程序。在.bat文件构建中.xml被调用,其中称为另一个文件名为.class测试的文件,称为 有没有机会在 Ant 中与此并行?

我的蚂蚁配置看起来像这样:

<target name="testexec-run-pattern" description="=> run JUnit tests by Pattern">
<mkdir dir="${junit.dir}/xml" />
<input addproperty="input.pattern" />
<echo message="Executing pattern: ${input.pattern}" />
<junit showoutput="true" printsummary="on">
<classpath refid="classpath" />
<batchtest todir="${junit.dir}/xml">
<formatter type="xml" extension=".xml" usefile="true" />
<zipfileset src="${test.jar}">
<patternset includes="${input.pattern}" />
</zipfileset>
</batchtest>
</junit>
</target>

其中模式集包含的是要运行的测试。我希望这些测试并行运行。我想我需要类似 foreach 的东西才能在线程中运行所有测试。

在 Ant 中,可以使用parallel标签并行执行任务。以下是从 Apache Ant 官方网站摘录的示例:


















此示例表示使用 threadCount 和 threadsPerProcessor 属性的典型需求。启动所有 40 个任务可能会削弱系统的内存和 CPU 时间。通过限制并发执行的数量,您可以减少对 CPU、内存和磁盘 IO 的争用,从而更快地完成。这也是使用 threadCount(可能还有 threadsPerProcessor)的一个很好的候选者,因为每个任务都是独立的(每个新的 JVM 都是分叉的),并且不依赖于其他任务。

有关更多信息,请参阅 Apache Ant 官方网站。

相关内容

  • 没有找到相关文章

最新更新