【发布时间】:2011-09-06 05:42:04
【问题描述】:
我有一个使用 ant 进行构建的标准 Java 项目。我想在不中断当前流程的情况下向这个项目添加 spock 测试。让我开始将 spock 测试集成到这个项目中的最小更改是什么。
关于使用 ant 将 spock 集成到遗留项目中的可用信息不多。
【问题讨论】:
我有一个使用 ant 进行构建的标准 Java 项目。我想在不中断当前流程的情况下向这个项目添加 spock 测试。让我开始将 spock 测试集成到这个项目中的最小更改是什么。
关于使用 ant 将 spock 集成到遗留项目中的可用信息不多。
【问题讨论】:
如果您的测试包中混合了 jUnit 和 Spock 测试(就像我们一样),您可以使用 groovyc 的联合编译功能,如下所示:
<groovyc srcdir="${testSrcDir}" destdir="${testTarget}" classpathref="testCompileClasspath">
<javac deprecation="on" debug="on"/>
</groovyc>
这将自动同时编译 Java 和 Groovy 测试。从此时起,您可以像以前一样使用junit 任务运行测试。
【讨论】:
您只需要使用groovyc Ant 任务(Spock 在类路径中)编译您的Spock 测试,然后使用junit Ant 任务(同样在类路径中使用Spock)运行它们。查看spock-example zip,它带有 Ant 构建。 (您可能必须提高 maven-ant-tasks 的版本才能使构建工作)。
【讨论】: