单元测试覆盖和测试大型组件

时间:2014-04-30 21:02:50

标签: java unit-testing junit tdd

我试图定位一个使用大量较小组件的相当大的类。目前我不知道有多少小型组件经过单元测试。

是否有工具或方法显示较大类中使用的所有未经测试的依赖项[加上子依赖项]?

我意识到我可以做一个完整的项目范围代码覆盖,并且我可以生成所有测试组件的列表。但是,从个别班级的角度来看,我能做些什么呢?

我为什么这么问?如果在没有子组件的情况下编写测试用例,那么编写测试用例就不会有效。

我目前正在使用:

  1. JUnit 4.11
  2. 爪哇
  3. JaCCO [emma compatible]

1 个答案:

答案 0 :(得分:1)

@monsky,这是一个有趣的问题。

Jacoco让您可以灵活地在您的报道中包含或排除一组特定的课程。如果你想找到只有依赖类的代码覆盖,你可以做两件事。

  1. 递归地找出需要涵盖的类的所有从属子模块。使用此功能,当您调用Jacoco时,请提及要包含其覆盖范围的明确类列表。您可以使用Jacoco的includes元素执行此操作。

    http://www.eclemma.org/jacoco/trunk/doc/ant.html

  2. 如果您有一个要包含的文件的就绪列表,只需在include语法中提及它,您就不必生成依赖项的动态列表。然而,我会选择1.

  3. 您也可以使用intellij IDe来执行此操作 http://jetbrains.com/idea/webhelp/analyzing-dependencies.html