searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

diff-cover在python项目应用生成增量代码覆盖率报告实践

2023-09-22 06:56:41
545
0

一、python工具diff-cover介绍

    diff-cover是一个针对python语言生成代码覆盖率的工具,并且能更好的生成增量代码覆盖率报告。diff--cover需要与coverage一起使用。、

二、diff-cover 安装,可以使用pip安装

     pip install diff-cover

三、在功能测试过程中,使用coverage收集当前分支代码覆盖率结果,生成代码覆盖率报告

     1.安装coverage

          安装coverage.py模块,可以使用pip命令来进行安装

          pip install coverage

      2.增加coverage应用,实现在功能测试用例执行过程中,收集代码覆盖率

            本文以python项目的django框架为例,将coverage应用到wsgi.py项目中,即可生成功能测试的代码覆盖率报告,如下图

      3.从远程master拉取代码,本地启动项目

         1.执行 python manage.py runserver,启动项目

         2.浏览器访问服务地址,进行测试用例执行,执行结束后,停止服务,查看覆盖率报告

             以下图python文件为例,可以通过代码覆盖率报告得知功能测试覆盖到了10-12行,11-12行

           

        3.本地针对该文件修改,然后按照上述步骤启动项目,用例执行,查看代码覆盖率报告

           改动点如下:左侧是远程master分支,右侧是本地修改的分支

          执行用例,查看报告,从报告中得出,新增的代码是没有被执行的

   

四、diff-cover应用

    (上边只是一行代码,能明确知道新增了一行并且没有被执行到,但是在业务复杂代码修改比较多的情况下,diff-cover可以帮助测试人员给出较清晰的增量覆盖率报告)

     1.在代码修改后的项目中,用例执行完成并且生成本次覆盖率报告后,到.coverage目录下,执行以下命令,生成xml格式的covergae文件

          coverage xml -o coverage.xml 

     2.明确要对比的分支,例如远程主分支(master),执行以下命令得到当前测试分支与主分支的增量代码覆盖率报告

     diff-cover coverage.xml --compare-branch=origin/master   --html-report coverage_diff.html

     如下图,通过diff-cover工具,可以快速清晰的生成增量代码覆盖率报告,包括差异文件行、未覆盖行、未覆盖行数、增量覆盖率情况等

 

0条评论
0 / 1000
d****n
8文章数
0粉丝数
d****n
8 文章 | 0 粉丝
原创

diff-cover在python项目应用生成增量代码覆盖率报告实践

2023-09-22 06:56:41
545
0

一、python工具diff-cover介绍

    diff-cover是一个针对python语言生成代码覆盖率的工具,并且能更好的生成增量代码覆盖率报告。diff--cover需要与coverage一起使用。、

二、diff-cover 安装,可以使用pip安装

     pip install diff-cover

三、在功能测试过程中,使用coverage收集当前分支代码覆盖率结果,生成代码覆盖率报告

     1.安装coverage

          安装coverage.py模块,可以使用pip命令来进行安装

          pip install coverage

      2.增加coverage应用,实现在功能测试用例执行过程中,收集代码覆盖率

            本文以python项目的django框架为例,将coverage应用到wsgi.py项目中,即可生成功能测试的代码覆盖率报告,如下图

      3.从远程master拉取代码,本地启动项目

         1.执行 python manage.py runserver,启动项目

         2.浏览器访问服务地址,进行测试用例执行,执行结束后,停止服务,查看覆盖率报告

             以下图python文件为例,可以通过代码覆盖率报告得知功能测试覆盖到了10-12行,11-12行

           

        3.本地针对该文件修改,然后按照上述步骤启动项目,用例执行,查看代码覆盖率报告

           改动点如下:左侧是远程master分支,右侧是本地修改的分支

          执行用例,查看报告,从报告中得出,新增的代码是没有被执行的

   

四、diff-cover应用

    (上边只是一行代码,能明确知道新增了一行并且没有被执行到,但是在业务复杂代码修改比较多的情况下,diff-cover可以帮助测试人员给出较清晰的增量覆盖率报告)

     1.在代码修改后的项目中,用例执行完成并且生成本次覆盖率报告后,到.coverage目录下,执行以下命令,生成xml格式的covergae文件

          coverage xml -o coverage.xml 

     2.明确要对比的分支,例如远程主分支(master),执行以下命令得到当前测试分支与主分支的增量代码覆盖率报告

     diff-cover coverage.xml --compare-branch=origin/master   --html-report coverage_diff.html

     如下图,通过diff-cover工具,可以快速清晰的生成增量代码覆盖率报告,包括差异文件行、未覆盖行、未覆盖行数、增量覆盖率情况等

 

文章来自个人专栏
代码覆盖率工具
2 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0