Ant:以编程方式创建JUnit报告任务

use*_*458 2 java ant

我使用Ant API以编程方式创建任务,但我还没有找到创建JUnit报告任务的类.简而言之,我希望使用Ant API等效于下面的代码:

<junitreport todir="..">
   <fileset dir="..">
      <include name="TEST-*.xml" />
   </fileset>
   <report format="frames" todir=".." />
</junitreport>
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助.

Eug*_*hov 5

所有任务定义都在ant.jar!org\apache\tools\ant\taskdefs\defaults.properties中声明

这是与JUnit相关的:

junit=org.apache.tools.ant.taskdefs.optional.junit.JUnitTask
junitreport=org.apache.tools.ant.taskdefs.optional.junit.XMLResultAggregator
Run Code Online (Sandbox Code Playgroud)

这里对应的Java代码可能如下所示:

FileSet fs = new FileSet();
fs.setDir(new File(".."));
fs.createInclude().setName("TEST-*.xml");

XMLResultAggregator aggregator = new XMLResultAggregator();
aggregator.addFileSet(fs);
AggregateTransformer transformer = aggregator.createReport();
transformer.setFormat(Format.FRAMES);
transformer.setTodir(new File("..");
Run Code Online (Sandbox Code Playgroud)