如上一个关于Cobertura的专题所说,我这里单开一个专题来专门说说Emma的Eclipse插件Eclemma的使用,尽管Emma生成的report在与Cobertura一起比较是显得似乎有些蹩脚,但是垂涎于Emma在代码覆盖细节方面的出众表现,我还是决定在我的Eclipse中集成Eclemma以便在开发过程中进行覆盖测试。
在对多逻辑并行条件的代码进行覆盖测试时,Cobertura表现得性格粗犷,而Emma则表现的温柔细致,体贴入微。打个比方,如果我们的某段程序中有如下代码:
if((a&&(b||c))||d){.......}
现在我们凑巧为包含这段程序的某个方法写了一个test case,在一时疏忽的情况下,假设我们仅仅对if判断中的一条逻辑分支做了判断,那么,这段代码中{......}内部的代码可以保证覆盖到,这个是没有问题的,但是我们并没有完全覆盖if语句的所有逻辑判断分支。
这样,对Cobertura来说,它认为已经足够了,代码也已经都覆盖到了,所以上面的这段代码在测试报告中是以绿色显示的,表明这段代码是可以覆盖到的。但是对Emma来说,它认为他有责任告诉开发人员这里可能会存在的潜在问题,因此他进行将该语句中已经覆盖到的部分显示为绿色,而对于没有覆盖到的部分则显示为浅黄色的警告色。
为了体验Emma这种对开发人员VIP式的测试体验,我把Eclemma集成到了我的Eclipse中。
Eclipse的插件集成方式大体可分为两种,一种是直接拷贝,另一种就是采用install,我倾向于采用后者。
Help→Software updates→Find and Install...→Search for new features to install→next→New Remote Site...→填写相关信息
我填写的更新站点和插件名称如下:
name:eclemma
点击完成结束配置,并开始下载安装插件,安装结束后Eclipse通常会提醒你重新启动Eclipse选择确定。在重新打开的Eclipse工具栏里你就会看到这个期待已久的代码覆盖测试工具Eclemma!
剩下来的,我想我就不需要多费唇舌了,呵呵呵呵。
分享到:
相关推荐
3. **Emma**:Emma是一款早期的代码覆盖率工具,尽管现在已被JaCoCo取代,但它仍然在某些项目中使用。Eclipse中的Emma插件可以帮助开发者收集和分析覆盖率数据。 在压缩包文件的列表中,我们看到的`content.jar`、`...
`emma_ant.jar`允许开发者在Ant脚本中添加Emma任务,以便在构建过程中自动计算代码覆盖率,这样可以在整个项目生命周期中持续监控代码覆盖率,而不是只在测试阶段进行检查。 使用EclEmma,开发者可以直观地看到代码...
Emma是一个开源的Java代码覆盖率工具,它通过两种主要的方式来对代码进行修改: 1. **预插入模式**:这种方式是在编译时将覆盖率追踪代码插入到源代码中。这种方式的优点是可以在运行时准确地跟踪代码覆盖率,而无需...
9. **代码覆盖率**:Eclipse的插件如Emma或Cobertura可以提供代码覆盖率报告,显示测试覆盖了多少代码行,帮助开发者识别未被测试的代码区域。 10. **调试工具**:在测试过程中,Eclipse的调试器是必不可少的。它...
在使用EMMA时,通常会将`emma.jar`加入到项目的类路径中,以便在运行测试时启用代码覆盖率分析。 `emma_ant.jar`是EMMA的Ant任务扩展,允许开发者在构建脚本中集成代码覆盖率分析。Ant是一个广泛使用的Java构建工具...
EMMA是一款专为Java开发设计的...总的来说,EMMA作为一个强大的Java代码覆盖率统计工具,能够帮助开发者更有效地进行单元测试,提升软件的质量和可靠性。通过深入理解和应用EMMA,可以为项目的测试工作提供有力的支持。
### 代码覆盖率工具EclEmma使用手册知识点梳理 ...通过以上知识点的梳理,读者可以更加系统地了解如何使用EclEmma进行代码覆盖率测试,并能够有效地将其应用于实际项目中,以提高软件产品的质量和可靠性。
Emma是一个Eclipse插件,能够计算代码覆盖率和提供代码覆盖率报告。 在Java单元测试中,需要注意以下几点: 1. 单元测试是编写测试代码,用来检测特定的、明确的、细颗粒的功能。 2. 单元测试并不一定保证程序功能...
Java代码覆盖率工具是软件开发过程中用于评估测试质量的重要手段,它们可以帮助开发者了解测试代码对源代码的覆盖程度,确保测试的全面性和有效性。本研究主要探讨了一种Java代码覆盖率工具的应用,以下将详细介绍...
### 代码覆盖测试—Code Coverage Testing with EclEmma 使用篇 #### 一、代码覆盖测试简介 代码覆盖测试是一种衡量软件测试完整性的方法,通过它我们可以了解到自动化测试或手动测试是否真正地覆盖到了代码的各个...
EMMA是一款经典的Java代码覆盖率工具,它通过分析字节码来计算覆盖率,而EclEmma则是EMMA的Eclipse插件形式,提供了更直观、更方便的集成开发环境(IDE)体验。EclEmma将代码覆盖率信息直接集成到Eclipse的编辑器、...
EclEmma这个名字是“Eclipse”和“Emma”的结合,Emma是一个知名的Java代码覆盖率库,而EclEmma则是将其集成到Eclipse IDE中的插件形式。这个版本的EclEmma提供了对代码覆盖率的直观展示,帮助开发者确保他们的测试...
- build.xml文件配置了TestNG和Emma,用于生成更清晰的测试报告和代码覆盖率报告。 - 代码覆盖率是衡量测试覆盖程度的指标,它帮助确认哪些代码已被测试。 2. **运行Ant任务**: - Ant脚本可以按照配置执行TestNG...
3. **Emma**:虽然现在已经被JaCoCo取代,Emma在过去曾是Java社区广泛使用的代码覆盖率工具,它提供命令行接口和Ant任务来收集覆盖率数据。 为了在项目中引入代码覆盖率,我们需要遵循以下步骤: 1. **配置构建...
`jar.build.xml`, `emma.build.xml`, `findbugs.build.xml`, `checkstyle.build.xml`, `dependencyfinder.build.xml`:这些都是构建脚本,分别对应于项目构建、打包成JAR文件、代码覆盖率分析(Emma)、静态代码...
10. **Emma, Clover**: 这些代码覆盖率工具测量单元测试覆盖了多少源代码,帮助确定测试的完整性。 11. **JAVANCSS**: 用于度量代码的复杂度,帮助识别可能难以理解和维护的代码段。 12. **JDepend**: JDepend度量...
代码覆盖率工具,如Cobertura或Emma,用于衡量测试代码对源代码的覆盖程度。它们可以帮助我们评估测试的质量,确保关键逻辑得到充分测试。 依赖项分析是理解项目中类和包之间关系的关键。JDepend工具提供了分析Java...