美文网首页
代码覆盖率解决方案

代码覆盖率解决方案

作者: yongliu1229 | 来源:发表于2017-03-29 11:36 被阅读0次

   在测试的世界里,覆盖包含代码级覆盖、流程分支级覆盖、业务场景级覆盖等,覆盖是衡量测试完整性的重要指标,我们只有覆盖了足够多的代码、分支、流程及业务后,才能对产品的发布更有信心。下面我来讲讲基于jacoco+Ant+sonar的单元及集成测试覆盖。

一、软件安装

   ant/maven

   jacoco

   soanr

二、服务端环境准备

1)将jacocoagent.jar放到部署应用的服务器中,该工具是一个agent包,用来采集JVM内存数据;

2)在应用的JAVA_OPTIONS中添加以下参数;

-javaagent:[apppath]/jacocoagent.jar=includes=*,output=tcpserver,address=[appip],port=[appport]

参数说明:

----apppath:就是jacocoagent.jar的路径;

----includes:是指要收集哪些类,不写的话默认是*,会收集应用服务上所有的类,包括服务器和其他中间件的类,一般要过滤;

----output:有4个值,分别是file,tcpserver,tcpclient,mbean,默认是file。使用file的方式只有在停掉应用服务的时候才能产生覆盖率文件,而使用tcpserver的方式可以在不停止应用服务的情况下下载覆盖率文件。

----address:应用部署的ip

----port:监听端口

ps:使用tcpserver模式的时候,需要ip和端口信息。

具体的参数值请参考jacoco的 java Agent。部分截图如下:

三、使用ant执行单元及集成测试

使用ant执行单元及集成测试用例,并生成单元测试覆盖率文件unit.exec。build.xml对应配置如下:

单元及集成测试执行配置

四、使用Ant dump下jacocoAgent覆盖率数据

使用Ant任务dump出jacocoAgent采集到的集成测试覆盖率数据dump.exec。build.xml配置如下:

dump覆盖率数据

五、合并单元测试及集成测试覆盖率数据

将生成的单元测试覆盖率文件和集成测试覆盖率文件合并到jacoco.exec文件中。build.xml配置如下:

文件合并配置

六、使用sonar分析合并文件,生成总覆盖率报告

使用sonar分析合并后的覆盖率文件,并生成对应的测试报告。build.xml配置如下:

soanr分析并生成报告

soanr平台覆盖率信息如下:

单元测试和集成测试合并后覆盖率

相关文章

  • Flutter线上代码覆盖率解决方案——FlutterCodeX

    Flutter线上代码覆盖率解决方案——FlutterCodeXFlutter线上代码覆盖率解决方案——Flutt...

  • Web端PHP代码函数覆盖率测试解决方案

    1. 关于代码覆盖率 衡量代码覆盖率有很多种层次,比如行覆盖率,函数/方法覆盖率,类覆盖率,分支覆盖率等等。代码覆...

  • 代码覆盖率解决方案

    在测试的世界里,覆盖包含代码级覆盖、流程分支级覆盖、业务场景级覆盖等,覆盖是衡量测试完整性的重要指标,我们只有覆...

  • 当谈论覆盖率时我们在谈什么?

    代码覆盖率 vs. 测试覆盖率 代码覆盖率通常指跑完测试后, 由工具自动统计的在跑测试的过程中被测代码的覆盖率, ...

  • 25-覆盖率概述

    ​ 可以添加定向测试,来填补那些覆盖率漏洞, 代码覆盖率 代码覆盖率在编译仿真的时候设置,即可自动收集信息, 功能覆盖率

  • 代码覆盖率-JaCoCo

    代码覆盖率 在做单元测试时,代码覆盖率常常被拿来作为衡量测试好坏的指标,甚至,用代码覆盖率来考核测试任务完成情况,...

  • 使用JaCoCo统计java代码覆盖率

    代码覆盖率 在白盒测试中,主要使用代码覆盖率来评判白盒测试完成的程度。代码覆盖率是指:在测试中,所执行的源代码占全...

  • jacoco-java测试覆盖率工具

    1 为什么要关注测试覆盖率 覆盖率是程序编程的最后一环,单元测试验证代码,而覆盖率验证测试用例。 代码覆盖率...

  • 翻译:使用Xcode测试(六)——代码覆盖率(Code Cove

    代码覆盖率是Xcode7的功能,可以在视觉上看到和衡量你的代码测试覆盖率。有了代码覆盖率,你可以确定测试是否符合你...

  • 代码测试覆盖率(JaCoCo)

    测试进行代码单元测试时,都应该执着于实现100%的覆盖率。代码覆盖率越高,并不能说明质量就越好,但是代码覆盖率很低...

网友评论

      本文标题:代码覆盖率解决方案

      本文链接:https://www.haomeiwen.com/subject/tareottx.html