当前位置: 首页 > news >正文

浙江网站怎么做推广网站建设签收单

浙江网站怎么做推广,网站建设签收单,即时聊天wordpress手机app,新闻资讯专业翻译公司前言 编写单元测试是开发健壮程序的有效途径#xff0c;单元测试写的好不好可以从多个指标考量#xff0c;其中一个就是单元测试的覆盖率。单元测试覆盖率可以看到我们的单元测试覆盖了多少代码行、类、分支等。查看单元测试覆盖率可以使用一些工具帮助我们计算#xff0c;…前言 编写单元测试是开发健壮程序的有效途径单元测试写的好不好可以从多个指标考量其中一个就是单元测试的覆盖率。单元测试覆盖率可以看到我们的单元测试覆盖了多少代码行、类、分支等。查看单元测试覆盖率可以使用一些工具帮助我们计算如 Idea 自带的单元测试工具、Jacoco 等。Jacoco 是一款开源的单元测试工具可以方便地整合到 Maven 中提供了更丰富的配置及通过规则可以生成单元测试报告也可以方便地和自动化流水线整合。所以更推荐使用 Jacoco 作为单元测试工具。 配置 Maven 配置 可以通过 Maven 插件的方式整合 Jacoco这样使用 mvn test 命令就可以生成 Jacoco 的测试报告了。 要配置 Jacoco在 build 中添加 Jacoco 插件即可。 buildplugins!-- Jacoco --plugingroupIdorg.jacoco/groupIdartifactIdjacoco-maven-plugin/artifactIdconfiguration!-- 排除文件 --excludesexclude**/*Test.class/excludeexclude**/*Configuration.class/excludeexclude**/*Properties.class/exclude/excludes/configurationexecutionsexecutionidjacoco-prepare-agent/idgoalsgoalprepare-agent/goal/goals/executionexecutionidjacoco-report/idphasetest/phasegoalsgoalreport/goal/goalsconfiguration!--定义输出的文件夹--outputDirectorytarget/test-report/outputDirectoryfooter火眼9988/footer/configuration/execution/executions/plugin/plugins /build上面定义了两个执行prepare-prepare-agent 是准备 Jacoco 的运行时代理而 jacoco-report 则是生成报告。 然后执行 mvn test 或通过 IDE 的 Maven 面板执行测试完成后就会在指定目录下生成 jacoco 的报告。默认会生成 csv 和 html 格式的csv 可以用于自动化流水线整合而 html 的可以用浏览器打开查看。 定义通过规则 我们可以使用 Jacoco 方便地配置通过规则只有满足特定规则才能通过测试否则 test 执行会失败。 添加一个 execution 即可在 rule 中定义我们的通过规则。 executionidjacoco-check/idgoalsgoalcheck/goal/goalsconfigurationrulesruleelementBUNDLE/elementexcludesexclude**/*Test.class/excludeexclude**/*Configuration.class/excludeexclude**/*Properties.class/exclude/excludeslimitslimitcounterLINE/countervalueCOVEREDRATIO/valueminimum0.8/minimum/limit/limits/rule/rules/configuration /execution上面定义了一条规则包含一个限制行覆盖率最低为 80%这里可查看完整案例。 其中 rule 标签定义了一条规则element 定义了规则对应的范围可选值有 BUNDLE表示整个模块是默认值PACKAGE表示代码包CLASS表示类SOURCEFILE源文件METHOD表示方法 每个规则可以定义多条限制limit每个限制有一个特定的指标 INSTRUCTION字节码指令是最细粒度的指标默认值LINE代码行一行代码可能有多个字节码指令BRANCH分支if 或 switch 包含了多个分支COMPLEXITY圈复杂度是代码复杂度的衡量标准简单来说越大越复杂需要的测试用例越多详细算法可参考百科METHOD方法CLASS类 为每个指标的值定义一个最大值或最小值。 TOTALCOUNT总数COVEREDCOUNT覆盖的数量MISSEDCOUNT未覆盖的数量COVEREDRATIO覆盖率范围从 0.0 到 1.0 默认值MISSEDRATIO未覆盖率范围从 0.0 到 1.0 excludes 标签定义要排除的文件。 例如下面的规则定义了 INSTRUCTION 的覆盖率至少 80%且没有类未被覆盖。 rulesruleelementBUNDLE/elementlimitslimitcounterINSTRUCTION/countervalueCOVEREDRATIO/valueminimum0.80/minimum/limitlimitcounterCLASS/countervalueMISSEDCOUNT/valuemaximum0/maximum/limit/limits/rule /rules规则的详细配置可参考官方文档。 Idea IDE 配置 Idea IDE 除了支持自带的单元测试工具外也支持使用 Jacoco。在配置中搜索 jacocoJava 覆盖率中选择运行程序为 Jacoco 即可不同的版本可能略有差别。 配置后在 IDE 中执行单元测试时选择第三项“使用覆盖率运行…”运行完成后即可打开覆盖率面板可查看当前单元测试的覆盖率代码编辑器中也会以颜色标记。 排除测试 如果在代码中使用 Lombok会有很多生成的代码这些往往不需要测试覆盖但如果不覆盖的话会影响测试覆盖率。Jacoco 可以自动排除 Lombok 的 Generated 注解标记的类或方法。要让 Lombok 为生成的代码添加注解可在项目的根目录中添加配置文件 lombok.config。 然后添加一行配置。 lombok.addLombokGeneratedAnnotation true这样生成的代码就会带上 Generated 注解被 Jacoco 排除计算了。当然如果自己的代码不用测试又不想影响覆盖率也可以添加这个注解。这里可以查看实际案例。 多模块聚合报告 如果我们的项目有多个模块Jacoco 会在每个模块下生成一个单独的报告能不能生成一个聚合的报告呢Jacoco 也贴心地为我们提供了生成聚合报告的方法。 首先添加一个模块专门用于生成聚合报告可以只有一个 pom.xml 文件。 在该模块的 pom 中添加如下配置report-aggregate 用于生成聚合的报告。 buildpluginsplugingroupIdorg.jacoco/groupIdartifactIdjacoco-maven-plugin/artifactIdexecutionsexecutionidjacoco-report-aggregate/idphasetest/phasegoalsgoalreport-aggregate/goal/goalsconfigurationoutputDirectorytarget/test-report/outputDirectoryfooter火眼9988/footer/configuration/execution/executions/plugin/plugins /build也不要忘记在 pom 的 dependencies 中添加其他模块作为依赖。这里可查看完整案例。 这样就可以获得我们项目的整体单元测试覆盖率了哦。 理解报告 如果能理解规则定义报告就非常容易理解了。如上面的截图所示报告表格各个列的意思为 Element对应配置的 element例如 BUNDLE 则是模块名Missed Instructions Cov字节码指令覆盖率下面的数字是未覆盖数量 of 总数Missed Branches Cov分支覆盖率下面的数字是未覆盖数量 of 总数Missed / Cxty未覆盖的以及总的圈复杂度Missed / Lines未覆盖的以及总的行数Missed / Methods未覆盖的以及总的方法Missed / Classes未覆盖的以及总的类 详情中可以看到每个文件的覆盖情况。其中行的颜色代表的当前行的覆盖情况。红色代表未覆盖黄色代码部分覆盖分支条件没有全部执行到绿色代码已覆盖。 赶紧整合试试吧
http://www.hkea.cn/news/14359479/

相关文章:

  • 遵义网站优化网站没有备案信息该怎么做
  • 过年做哪个网站能致富平台连接
  • 漳州 做网站wordpress扩展
  • 广州做网站公司电话那间公司做网站好
  • 大连做网站优化网站建设完成后为何无法运营下去
  • 朝阳凌源网站建设北大青鸟培训机构官网
  • 本地wordpress建站一个人做商城网站
  • php建设网站所用开发软件西安的网站制作公司
  • 专业网站设计 软件百度网站推广服务商
  • 国外网站备案上海建设房屋网站
  • 我是做网站的安庆跨境电商建站哪家好
  • 传播型网站建设优势有哪些建筑工程网格优化
  • 在一个城市做相亲网站全网营销推广 好做吗
  • 电子商务网站建设合同标准范文注册一个公司网站的费用
  • 个人网站建立多少钱旧房翻新装修
  • 网站建设 证书网站建设服务的会计处理
  • 有哪些网站的搜索引擎网站信息推广的策略有哪些
  • 深圳公司网站设计公dedecms手机网站仿制
  • 苏宁易购网站建设 的定位佛山网站策划公司
  • jsp网站安全性网站外链发布
  • 外贸网站免费推广wordpress 首页缩略图
  • 网站建设实训总结封面怎么做网站动态地图
  • html网站开发实例教程抚州seo排名
  • 创意网站界面学网络运营在哪里学比较好
  • 上市公司网站的作用推广之家邀请码
  • wordpress怎么生成网站地图wordpress 本文目录
  • 网站设计的公司报价注册传媒公司需要多少钱
  • 网站建设费长期待摊费用中国突然宣布一重磅消息
  • 个人网站名称有哪些宝塔建站wordpress
  • 楼盘网站模板响应式网站微博视频