我们有一个单独的evosuite生成的unittest.java文件。我们还有其他手工制作的unittest.java文件。我们在服务器上执行构建,并执行所有单元测试(evosuite和手工制作的)。然后,我们进入声纳仪表板,专门查看覆盖范围。声纳/jacoco从手工制作的单元测试中报告了覆盖范围。然而,对于evosuite要测试的.java文件,该文件仍然有0%的覆盖率,尽管在sonar/jacoco仪表板的另一个面板上执行了evosuite16测试,并显示了测试所需的时间(毫秒)。
进行构建的服务器是为我们配置的,我们不管理它们。Sonar/Jaco管理员设置由其他人完成。
我不知道为什么我们手工制作的(有些使用@RunWith(JMockit.class),有些不使用RunWith注释)显示w/coverage百分比,而evosuite却没有。
谢谢,Jim
是的,这是一个已经报告了几次的问题。。。所以我现在添加了一些关于它的文档:-)在:
http://www.evosuite.org/documentation/measuring-code-coverage/
你可以在那里阅读为什么你得到0%的覆盖率,以及可能的解决方案。