0

我正在尝试弄清楚如何在实际上不需要 build.xml 的情况下运行 ant 任务。特别是我想JUnit用格式化程序运行任务。在 xml 格式中,如下所示:

<junit printsummary="true" errorProperty="test.failed" failureProperty="test.failed">
    <classpath refid="run.class.path" />

    <!-- console log -->
    <formatter type="xml" classname="be.x.SFFormatter" />

    <test name="be.x.SF" outfile="result" todir="${build.output.dir}" />
</junit>

它在运行 ant 脚本时有效,但我想让我的应用程序作为可运行的 jar 运行。从 Java 运行测试很容易:

    JUnitCore junit = new JUnitCore();
    testResult = junit.run(SeleniumFramework.class);

但是,我很难弄清楚如何让格式化程序真正工作。格式化程序是类型的org.apache.tools.ant.taskdefs.optional.junit.JUnitResultFormatter,所以我怀疑我是否可以在不运行 ant 的情况下将其插入某个地方。

有没有人做过类似的事情?谢谢!

4

2 回答 2

2

蚂蚁不会做任何魔法。它所做的只是读取 XML 文件,创建其中指定的 bean,然后按照 Task API ( org.apache.tools.ant.Task) 执行方法。

所以你需要做的就是在你的代码中做同样的事情。不要忘记创建一个Project:-)

于 2012-07-11T11:54:31.173 回答
1

您可以通过 Groovy 使用 Ant 来避免使用 xml 语法。
有关详细信息,请参阅 =>从 Groovy 使用 Ant

于 2012-07-11T17:27:10.780 回答