软件测试 您所在的位置:网站首页 山东大学x0 软件测试

软件测试

2023-06-01 15:14| 来源: 网络整理| 查看: 265

导入覆盖率

sonarqube 可以分析 jacoco 的 exec 文件与 xml 文件,并自动导入覆盖率。exec 文件的分析后续会放弃 支持,主支持 xml 文件的分析。

sonar-scanner \ -Dsonar.host.url=http://sonarqube.testing-studio.com:9000 \ -Dsonar.login=$SONARQUBE_TOKEN \ -Dsonar.projectKey=jmeter \ -Dsonar.projectVersion=1.0 \ -Dsonar.coverage.jacoco.xmlReportPaths=$PWD/jmeter_coverage_tcpserver2/ jacoco.xml \ -Dsonar.projectBaseDir=/Users/seveniruby/projects/jmeter/ \ -Dsonar.java.binaries=/Users/seveniruby/projects/jmeter/

限定范围的代码覆盖

可以通过如下参数限定要分析代码的范围,通常是指明要覆盖的 package 范围

sonar.sources

sonar.inclusions

新增代码覆盖率

sonarqube 可以智能分析新老版本之间的新增代码的覆盖率,这点非常不错,以前一些分析代码 diff 的 工作就节省了。他的代码分析也比较智能,简单的换行并不会干扰代码 diff 的分析范围。

通用覆盖率数据

sonarqube 支持两种通用的测试数据导入

通用覆盖率数据:sonar.coverageReportPaths

通用测试执行数据:sonar.testExecutionReportPaths

这样方便与各种框架进行集成,也方便测试工程师二次定制。

通用测试数据模板

通用覆盖率数据模板

在 sonarqube 的 scanner 分析中,加入对应的配置参数即可导入通用测试数据。

通用测试数据导入的常见用途

将各种测试工具的测试报告转换为 sonarqube 支持的格式从而导入平台

将各种覆盖率工具的覆盖率报告转换为标准格式导入平台

根据需求对差异 diff 覆盖率进行定制,比如除了对新增代码做覆盖,还要对使用了新增代码的依赖 代码也做分析

代码diff方法

代码的 diff 分析是一个比较大的话题,diff 只是对代码的最简单的一个分析策略,要想深入的理解代 码,我们还需要更进一步的分析代码的调用链。我们先看最简单的代码 diff 分析工具。

代码 diff 分析工具

JGit:git 分析工具

JavaParser:语法分析

ASM:读取字节码

javap:jdk 自带字节码分析工具



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有