我目前有一个使用Jenkins自动构建的版本。 Jenkins构建/部署作业使用maven构建Java EAR,然后将构建的EAR部署到服务器。
我想将Spock测试集成到此构建/部署流程中。构建EAR后,我想针对EAR代码运行Spock测试。如果所有测试都通过,那么我想继续部署EAR。如果一个或多个测试失败,那么我希望Jenkins构建/部署作业失败并返回错误。
我还希望显示测试结果的摘要,无论它们是通过还是失败。
我需要对Jenkins构建/部署作业进行哪些更改,实际构建EAR和/或Spock测试的maven项目是为了实现此目的?
答案 0 :(得分:2)
您可以将Spock视为JUnit扩展。因此,所有帮助您运行JUnit驱动测试的工具也适用于spock。
例如,
现在,一个令人困惑的部分是关于EAR。测试(单元和集成)通常在构建准备好之前运行。在EAR准备好之后,可能您想要运行系统测试(结束2端流)或其他东西。这意味着spock / junit /任何其他框架都必须从外部联系EAR,这反过来意味着您必须启动应用程序服务器,这些测试将像远程客户端一样。
这是可能的,但设置会更复杂(所有数据库,应用程序服务器本身等等),但这超出了这个问题的范围。