我正在尝试使用Eclipse和EclEmma在Java中进行代码覆盖。
我的测试使用的是JUnit 4,我有一些类似的测试:
@Test(expected = IllegalArgumentException.class)
public void createTime_withInvalidMinuteUnder0_throws(){
//Arrange
...
//Act
Something triggering IllegalArgumentException Here
}
EclEmma说测试失败,因为抛出了IllegalArgumentException。因此,即使它应该抛出某些东西,它也会丢弃我的代码覆盖率指示器。是否有使其看到JUnit预期异常标记的选项?
编辑:我发现,如果您也将throw添加到测试的声明中,则可以正常工作!
不,没有办法让EclEmma注意到该expected
子句。他们在这里承认这一事实。
为什么带有预期异常的JUnit4测试用例显示为未涵盖?
具有预期异常的JUnit4测试用例即使已执行,也显示为未涵盖。原因是底层的JaCoCo代码覆盖库仅在执行某些探测时才将代码视为已执行。对于标有
@Test{expected=...}
此标记的成功测试案例,情况并非如此。
就个人而言,我不会对此太担心。测试用例的覆盖范围是EclEmma告诉您的最不有趣的事情。我始终完全忽略这些指标,而专注于生产代码的覆盖范围。
我正试图使用Eclipse和EclEmma在java中覆盖我的代码。 我的测试使用JUnit 4,我有一些测试看起来像这样: EclEmma说测试失败是因为抛出了一个IllegalArgumentExc0019。所以它会丢弃我的代码覆盖率指标,即使它应该抛出一些东西。有没有一个选项可以让它看到JUnit期望的异常标签? 编辑:我发现,如果您将抛出添加到测试声明中,它也可以工作!
我不熟悉java、Junit和jacoco。我正在做下面的异常处理。我也在捕获异常类,以防该方法抛出之前未捕获的任何其他异常。 在Junit测试中,尝试如下。当我有运行时的任何异常时,我抛出的总是运行时异常捕获块本身,除非我抛出异常。我可以尝试其他哪个选中的异常,使其进入异常捕获块。因此,我无法获得所需的代码覆盖率。 谢谢你的帮助。
问题内容: 我已经配置了EclEmma,使其无法正常运行我的单元测试。但是,编辑器仍会突出显示未涵盖的测试代码。我不希望单元测试中突出显示,因为它们没有检测到覆盖率。我怎样才能做到这一点? 问题答案: 我做了以下步骤: 转到 “首选项”- >“ Java”->“代码覆盖率”,然后 将 “仅路径条目匹配” 选项设置为 看来效果很好。
我正在使用Mocha测试我的NodeJS应用程序。我不知道如何使用它的代码覆盖功能。我试着谷歌它,但没有找到任何适当的教程。请帮忙。
我正在尝试使用JaCoCo-javaagent传递VM参数来获得代码覆盖率 -Java agent:/test/jaco co/jaco agent . jar = dest file =/test/jaco co/jaco co . exec,includes=com。*,append=true 我能在jacoco中获得一些价值。执行文件,但无法获取覆盖率报告。我怎样才能把jacoco转化成。执
问题内容: 我正在使用Mocha测试我的NodeJS应用程序。我无法弄清楚如何使用其代码覆盖功能。我尝试使用Google搜索,但没有找到任何合适的教程。请帮忙。 问题答案: 您需要一个额外的库来覆盖代码,而伊斯坦布尔的强大和便捷将使您震惊。通过Mocha测试后,请尝试以下操作: 现在,只需将命令nyc放在现有测试命令的前面,例如: