`
dengminhui
  • 浏览: 167285 次
  • 来自: ...
社区版块
存档分类
最新评论

使用Emma进行单元测试覆盖率统计

阅读更多

1 为什么使用Emma

万恶的Cobertura,只能支持test代码和java代码在一个工程下的单元测试覆盖率统计。之前,由于Morgan单独建了一个工程来进行单元测试,导致单元测试覆盖率使用统计不全。在网上寻觅良久之后,终于找到eclemma解决该问题,此为emma比较Cobertura的第一个优点。

emma的另外一个优点是对于语句中的多分支判断的严谨性。对于if(a||b)这样的语句,如果只满足a套件,cobertuna即会标为绿色,表示分支已经覆盖,而emma只会把标为黄色,表示部分覆盖。

 

2 如何安装Emma

--------------------------------------------------------------------------------

Eclipse→Help→Software updates→Find and Install...→Search for new features to install→next→New Remote Site...

填写站点和名字即可

name:Emma

URL:http://update.eclemma.org/

之后会进入到update页面,选择最新版本安装即可,目前最新的1.5.1。安装后,系统一般会建议重启。

 

3 如何使用Emma

 

有时候,由于修改了二方库,觉得在hudson平台上跑还需要更新二方库很麻烦,只想在本地测一下大概的覆盖率?检查一下那些分支没被覆盖?使用Emma非常方便。

 

选择需要运行的工程或者类文件,选择Coverage As→*Test*(JUnit Test or TestNG),执行完毕后,可以看到文件的代码行变为了三种颜色:绿色表示该行代码完全被覆盖;黄色表示部分被覆盖,一般是某些分支被覆盖的情况;红色表示完全未覆盖 。另外,还有一个单独的Coverage视图用以统计覆盖率,由于与Eclipse继承较好,使用起来非常方便,覆盖率多少,有哪些分支未被覆盖到,一目了然,再也不用到hudson平台上一个文件一个文件去找了。

 

如果你想在本地更好的测试覆盖率和分支?建议大家可以尝试使用Emma.

如果你写了很多单元测试,但是Hudson平台的统计与预期有较大差距,建议使用Emma来做一下检测。 

分享到:
评论

相关推荐

    emma单元测试覆盖率

    EMMA的核心功能在于收集和分析执行单元测试后的代码覆盖数据,包括行覆盖率、分支覆盖率、方法覆盖率等。这些覆盖率数据有助于开发者了解哪些代码被测试所覆盖,以及覆盖率的高低,从而识别出可能未被充分测试的代码...

    基于emma的测试覆盖率分析工具,swing界面操作

    Emma是一款广泛应用于Java项目的开源代码覆盖率工具,它能够帮助开发者评估单元测试的质量。Emma提供了一种高效且精确的方式来衡量代码在测试中的执行情况,即测试覆盖率,这包括了哪些代码被测试用例执行过,以及...

    基于Emma的独立测试用例代码覆盖率统计

    在介绍EMMA这一开源覆盖率工具的基础上,本文主要探讨了如何在实际Java项目中使用EMMA进行代码覆盖率统计,强调了功能测试中类覆盖率和方法覆盖率的重要性,并介绍了EMMA在环境准备、工具配置、测试执行和覆盖率报告...

    Emma进行代码覆盖率检查(命令行方式)

    在 Offline 模式下使用 Emma 进行代码覆盖率检查需要经过三个步骤:插桩、运行测试、合并覆盖率统计数据和输出统计报告。 插桩是 Emma 的第一个步骤,使用 instr 命令对 class 文件或文件夹进行插桩。插桩的目的是...

    emma统计手工测试或Ui测试覆盖率——几个工具文件

    标题中的“emma统计手工测试或Ui测试覆盖率”指的是Emma,一个开源的Java代码覆盖率工具,它可以帮助开发者衡量单元测试和集成测试对代码的覆盖程度。Emma可以与JUnit、TestNG等测试框架配合使用,提供类、方法、行...

    EclEmma java单元测试覆盖率

    ### EclEmma Java单元测试覆盖率详解 #### 一、EclEmma简介 EclEmma是一款专为Eclipse设计的强大插件,主要用于Java项目的代码覆盖率分析。通过对Java代码进行覆盖率检查,开发人员可以清晰地了解到哪些代码已经被...

    Ant+JUnit+EMMA单元测试覆盖率

    EMMA,它是一个免费、开源的、用来衡量单元测试覆盖度的工具。三者结合,利用EMMA产生的测试覆盖度报考,可以一目了然的知道那部分代码已经被测试,哪部分没有,从而控制单元测试的质量。  EMMA,它是一个免费、...

    emma java统计代码覆盖率

    【Emma Java代码覆盖率统计】 Emma 是一款开源的 Java 代码覆盖率工具,专为评估和报告 Java 代码的测试覆盖率而设计。它适用于各种规模的项目,从小型项目到大型企业级应用,都能提供准确的覆盖率数据。Emma 提供...

    使用EMMA获得功能测试覆盖率

    在本文中,作者将EMMA引入到功能测试的过程,详细介绍EMMA在功能测试中的使用方法、步骤,并对覆盖率结果进行分析。  引言  EMMA是一个开源、面向Java程序测试覆盖率收集和报告工具。它通过对编译后的Java字节码...

    emma最新版——一款很小巧很好用的java单测覆盖率统计工具

    EMMA是一款专为Java开发设计的...总的来说,EMMA作为一个强大的Java代码覆盖率统计工具,能够帮助开发者更有效地进行单元测试,提升软件的质量和可靠性。通过深入理解和应用EMMA,可以为项目的测试工作提供有力的支持。

    代码覆盖率驱动的测试资料.docx

    本文主要探讨了如何利用代码覆盖率工具EMMA来进行测试,并详细介绍了在Android工程中使用EMMA进行单元测试覆盖率检查的步骤。 EMMA是一个开源的Java程序测试覆盖率工具,它通过字节码插装技术在运行时收集覆盖率...

    [转]EMMA测试代码覆盖率的脚本

    标签“源码”和“工具”进一步确认了这个压缩包可能包含的是一个示例项目或者配置文件,可能是一个Ant构建脚本(jUnit_build.xml),用于演示如何将EMMA与JUnit(一个流行的Java单元测试框架)结合...

    深入学习Java单元测试(Junit+Mock+代码覆盖率)

    深入学习Java单元测试(Junit+Mock+代码覆盖率) Java单元测试是软件测试的一种,旨在验证软件的正确性和可靠性。单元测试是编写测试代码,...Java单元测试需要使用Junit框架和Mock技术,并且需要注意代码覆盖率指标。

    emma代码覆盖率

    用户代码覆盖率测试 ,开源可重写,对于产品质量控制非常重要

    emma_ant.jar,emma.jar合包

    Emma是一个广泛使用的Java代码覆盖率工具,它提供了对Java应用程序单元测试的覆盖率分析。通过集成Ant构建工具,开发者能够方便地在他们的构建流程中插入代码覆盖率检查。 1. **Emma工具介绍** Emma是一个开源项目...

    emma.jar emma_ant.jar emma_device.jar

    在使用EMMA时,通常会将`emma.jar`加入到项目的类路径中,以便在运行测试时启用代码覆盖率分析。 `emma_ant.jar`是EMMA的Ant任务扩展,允许开发者在构建脚本中集成代码覆盖率分析。Ant是一个广泛使用的Java构建工具...

Global site tag (gtag.js) - Google Analytics