我无法理解Grails分叉模式以及在我运行grails test-app -coverage
时它对代码覆盖率报告的影响。我使用的是Grails 2.3.1。
我关闭了测试配置的分叉模式
grails.project.fork = [... test: false ... ]
单元测试显示在报道报告中。
但是,功能测试的覆盖范围不包含在Cobertura输出中。
如果我同时关闭run
选项的分叉模式,那么我做从Cobertura报告中的功能测试获得覆盖。
问题:
为什么run
的分叉模式会影响覆盖范围输出?是不是也部署到嵌入式Tomcat的相同检测类?
有没有办法在run-app中正常使用分叉模式,但是在test-app -functional
附近为测试启用时却没有?
答案 0 :(得分:2)
问题应在https://github.com/beckje01/grails-code-coverage/issues报告。
是的,有一种方法可以为run-app使用分叉模式,但不能用于test-app。在BuildConfig.groovy
中,您可以执行以下操作:
grails.project.fork = [
test: false,
run: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, forkReserve:false],
war: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, forkReserve:false],
console: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256]
]
这可能不会以您想要的方式影响功能测试,但会影响其他测试。
修改强>
请参阅https://github.com/beckje01/grails-code-coverage/issues/11
这可能对功能测试没有帮助,可能需要作为一个单独的问题来解决。