我试图在包含自动生成代码的项目上设置Cobertura代码覆盖率,该代码使用Freemarker(显式地,使用fmpp maven插件)从模板创建。Freemarker自动生成代码的Cobertura代码覆盖率
然后我对这些自动生成的类进行单元测试。
但是,在计算代码覆盖率时,Cobertura没有考虑这些单元测试。自动生成的类出现在报告中,但这些类的覆盖率始终为0%。
首先,是否有一些我错过的Cobertura配置?
这SO question似乎已经问过类似的问题,但接受的答案是:
生成的代码不应该进行测试,不应在代码覆盖率的指标来使用。
这看起来不太合适 - 我想我应该测试生成的代码(测试生成的类和模板),并且我想知道代码覆盖率是如何生成的。
那么,第二,是否有一个很好的理由为什么生成的代码不应该被测试?
编辑:这也是相关的提及,我正在使用cobertura-maven-plugin cobertura。因此,我不确定问题是否与cobertura或Maven插件(或我的配置...)
N.b.要清楚,我不是在问自动生成测试类。这些都是手动编写的,以测试从模板创建的类。