我正在将2.4.3的grails应用程序升级到3.0.8。 有很多集成测试正在使用grails.util.GrailsWebUtil.bindMockWebRequest(grailsApplication.mainContext)
以下调用controller.method
。但我发现grails.util.GrailsWebUtil
不再包含bindMockWebRequest
方法,好像它已被替换为grails.util.GrailsWebMockUtil
,好吧,但是在控制器中声明的所有服务都是没有被注入类。我可以使用grails.test.spock.IntegrationSpec
,但该类也已从grails3中删除。有一个suggestion使用功能测试来进行控制器的集成测试,但是这个解决方案对我来说不起作用,我并不是很想将所有这些测试作为功能实现,或者手动将依赖项注入到控制器实例中,我该如何解决它?控制器集成测试grails3:服务没有注入
0
A
回答
0
使用grails.test.mixin.integration.Integration
注释而不是grails.test.spock.IntegrationSpec
类扩展名。
并将集成测试移至src/integration-test/groovy
。
0
我从Grails 2.5.1升级到3.2.4。我的一个集成测试找不到使用def xxxService注入的服务。我将服务包含在@Mock列表中。 XxxServiceIntegrationSpec扩展了规范。
我知道这不太相关测试控制器,但也许它有帮助吗?
0
我们在旧的grails 2.x应用程序中使用了控制器集成的dozones。当我们迁移到grails 3时,我们想保留它,不能抛出它们并从头开始编写功能测试。
在这里,我在博客它Integration testing controllers with Grails 3
的基本步骤是 - 设置模拟请求和响应 - 设定电流控制器名称 - 其余模拟请求并在测试
见的端部响应以上博客文章为一个完整的例子。
希望它有帮助。
相关问题
- 1. Grails测试集成,控制器注入
- 2. Grails测试集成服务注入
- 3. 将Angular服务注入集成测试
- 4. 弹性集成测试依赖注入控制器
- 5. 将模拟组件注入控制器 - 集成测试 - cakephp 3
- 6. 注入一个angularjs控制器测试的模拟服务
- 7. 集成测试运行HTTP服务器实例没有嘲笑?
- 8. 具有依赖注入服务和存储库的单元测试控制器
- 9. 集成测试用于控制器
- 10. Spring MVC控制器的集成测试
- 11. 与Rails控制器(集成?)测试
- 12. 从resources.groovy注入Spring Beans到Grails 3服务的集成测试
- 13. Karma测试注入服务
- 14. 服务未能注入控制器
- 15. 服务注入到控制器(Spring MVC)
- 16. 基地控制器/服务Depedendency注入
- 17. 无法将服务注入控制器
- 18. 如何将控制器注入服务?
- 19. Ember测试:在组件测试中注入控制器
- 20. MVC 3:测试控制器VS集成测试
- 21. Phoenix:API集成测试vs控制器测试
- 22. 服务没有定义时,它注入Karma测试 - AngularJS
- 23. Angular2测试 - 注入服务的方法是没有定义
- 24. 连续集成服务器上的集成测试
- 25. call api测试服务器:.net核心API集成测试
- 26. 集成多线程测试来压力测试服务器
- 27. 测试。控制器茉莉花服务的成功和错误
- 28. IFilterProvider注入没有服务定位器
- 29. Spring集成测试 - AuthenticationPrincipal未注入
- 30. ZF2依赖注入到没有服务定位器的控制器对象
'ConfigurableApplicationContext ctx =(ConfigurableApplicationContext)grailsApplication.getMainContext(); 。 ctx.getBeanFactory()autowireBeanProperties(控制器, AutowireCapableBeanFactory.AUTOWIRE_BY_NAME,FALSE);' - 可能是一个解决方案 – airfox
下面是如何编写集成测试与Grails的控制器3 http://nimavat.me/blog一个完整的例子/ grails3控制器集成 - 测试 - 例如 –