EMMA 收集的数据包括类覆盖率、方法覆盖率、块覆盖率和行覆盖率,这些数据以包为单位进行组织。
大多数功能测试中,测试人员一般不能直接得到被测源代码,源代码也不是测试人员关心的重点。在具体的测试过程中,功能测试人员一般以一个有意义的功能模块作为测试关心的重点,而能够反映一定功能含义的类和方法的覆盖率在功能测试中更有价值。因此,在功能测试中,类覆盖率和方法覆盖率是测试人员关心的重点,行和块覆盖率则作为测试的参考。
测试覆盖率报告中包含了两个方面的内容,测试覆盖的部分和未被测试覆盖的部分。尽管百分之百的测试覆盖率不能代表被测对象完全没有问题,但是测试覆盖的部分以及覆盖比率可以增加测试者对测试工作的信心,指导测试执行以及测试的方向。另一方面,当测试用例执行出现异常时,针对每个测试用例的测试报告还可以提供可疑代码的范围,为代码纠错提供帮助。
测试覆盖率报告中未覆盖的部分也同样有价值:
表明测试可能不完整,有些功能、代码没有被测试覆盖到。
为测试用例的设计提供指导建议。在覆盖率报告的指导下,测试人员有目的地与开发人员进行讨论,确定未覆盖部分是测试的空白还是不需要测试的部分。
帮助开发人员发现无用代码,为修改,完善代码提供依据。
在使用 EMMA 获得测试覆盖率过程中,类、方法等覆盖的百分比报告,可以方便测试人员更好的评估测试。测试人员通过对照覆盖率报告与测试用例设计文档,需求文档可以迅速找到测试的不足。通过与开发人员进行讨论,可以更好的评估测试力度,并指导进一步的测试。因此在功能测试中引入覆盖率信息,能够完善测试结果报告,确保测试质量和力度,保证测试按质、按量地完成。
特别是在目前倡导的 Agile 开发和测试流程中,开发和测试的周期都很短,有效的覆盖率信息能够帮助测试人员更加准确地控制测试结果和周期、跟踪问题,保证软件正常发布。
Eclipse的插件集成方式大体可分为两种,一种是直接拷贝,另一种就是采用install
Help→Software updates→Find and Install...→Search for new features to install→next→New Remote Site...→填写相关信息
name:eclemma
URL:http://update.eclemma.org/
点击完成结束配置,并开始下载安装插件,安装结束后Eclipse通常会提醒你重新启动Eclipse选择确定。在重新打开的Eclipse工具栏里你就会看到这个期待已久的代码覆盖测试工具Eclemma!