grails test-app -coverage不包括分叉模式下的功能测试的覆盖范围

时间:2014-07-15 13:26:47

标签: grails

我无法理解Grails分叉模式以及在我运行grails test-app -coverage时它对代码覆盖率报告的影响。我使用的是Grails 2.3.1。

我关闭了测试配置的分叉模式

grails.project.fork = [... test: false  ... ]

单元测试显示在报道报告中。

但是,功能测试的覆盖范围不包含在Cobertura输出中。

如果我同时关闭run选项的分叉模式,那么我从Cobertura报告中的功能测试获得覆盖。

问题:

  • 为什么run的分叉模式会影响覆盖范围输出?是不是也部署到嵌入式Tomcat的相同检测类?

  • 有没有办法在run-app中正常使用分叉模式,但是在test-app -functional附近为测试启用时却没有?

1 个答案:

答案 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

这可能对功能测试没有帮助,可能需要作为一个单独的问题来解决。