要在运行测试之前设置环境,我使用GebConfig.groovy类,该类在运行Runnig测试时作为第一个组件被触发。但是我还需要在所有测试完成后将环境恢复到初始状态。
我试图在扩展了GebReportingSpec类的类中过量使用cleanUpSpec()方法,但是在每次测试后都会调用它。
是否有一种方法可以在完成所有测试后将方法清理为初始状态?
我正在这个项目中使用maven。
答案 0 :(得分:0)
我不知道Geb或Spock中的任何机制。通常,我的经验是,当每个测试在开始之前就设置好阶段时,您会处于一个更好的位置,而不是依靠某些可能尚未执行的清理机制。
但是,如果您真的需要这个,我建议在执行阶段后(集成)测试中使用类似Maven Exec Plugin的东西:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>cleanup</id>
<phase>post-test</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>cleanup.groovy</executable>
</configuration>
</plugin>
您可以使用任何可执行文件代替cleanup.groovy
,但请记住,该文件必须是可执行文件(chmod +x ...
)。