Grails 3中的IntegrationSpec在哪里?

时间:2015-04-14 03:21:15

标签: grails grails-3.0

升级到Grails 3.0.1的过程中。除了在2.4.4中运行良好的集成测试外,一切都很好。

我已经注意到grails.test.spock.IntegrationSpec中不存在org.grails:grails-test:3.0.1了。

尝试延长spock.lang.Specification并通过Gradle integrationTest任务运行但是它似乎没有注入Spring资源。同时尝试@Integration得到同样的错误,GGTS还抱怨:

General error during canonicalization: Provider "data" not installed java.nio.file.FileSystemNotFoundException: Provider "data" not installed at java.nio.file.Paths.get(Paths.java:147) at  
org.grails.io.support.MainClassFinder.searchMainClass(MainClassFinder.groovy:37) at 
org.grails.compiler.injection.test.IntegrationTestMixinTransformation.visit(IntegrationTestMixinTransformation.groovy:82) at 
org.codehaus.groovy.transform.ASTTransformationVisitor.visitClass(ASTTransformationVisitor.java:150) at org.codehaus.groovy.transform.ASTTransformationVisitor
...

所以我想知道3.0中是否仍然存在IntegrationSpec。我应该如何运作?

1 个答案:

答案 0 :(得分:9)

好吧,想通了@Integration应该应用并解决编译错误我必须指定@Integration(applicationClass = Application.class),因为IDE无法找到Application类。当然,测试用例应该扩展Specification

@Autowired用于需要注入测试类的对象。无法将@Autowired@Shared结合使用,您可以在2.x中执行此操作。