我正在开发spring boot应用程序。我必须为它编写测试用例。我之前没有编写过测试用例,所以有人建议使用spock框架。我探索了spock,我认为它与groovy语言更相关。
我可以为我的spring应用程序编写spock测试用例吗?
如果是这样,那么你能否建议我更好地记录"如何在春季启动应用中使用它"?
答案 0 :(得分:7)
是的,您可以为春季应用程序编写spock测试用例。
查看official documentation有关使用Spring Boot进行Spock测试的示例
35.3.1使用Spock测试Spring Boot应用程序
简单的Google搜索会显示Using Spock to test Spring classes的基本示例。
Spock很大程度上依赖于Spring的TestContext框架而且确实如此 这是通过@ContextConfiguration注释。这允许测试 规范类,用于从一个或多个加载应用程序上下文 位置。
Spring One g2x有一篇关于使用Spock测试Java,Groovy,Spring和Web应用程序的大型演示文稿。
Groovy和Java可以自由混合在一起,您可以使用任何您喜欢的基于Java的库,或者使用基于Groovy的库。
Spring框架支持Groovy,而且 - 毫不奇怪 - Spring TestContext框架适用于Spock Spock规范 从正常的JUnit测试中运行IDE,最后但不是 至少,实现它们是学习Groovy的好机会 language.source
答案 1 :(得分:1)
以下是帮助您使用Spring启动编写spock测试的步骤。
@ContextConfiguration(classes = StartApplication.class, loader = SpringApplicationContextLoader.class)
@TestPropertySource(locations = "classpath:application-iTest.properties")
@WebAppConfiguration
@ComponentScan( "com.xyz")
@ActiveProfiles("iTest")
@IntegrationTest("server.port:0")
class TestAuditReport extends Specification{
def Test1(){
given :
when:
then:
1==1
}
}