HarmonyOS鸿蒙Next组件化架构下,该如何查看黑盒测试下的代码覆盖率

HarmonyOS鸿蒙Next组件化架构下,该如何查看黑盒测试下的代码覆盖率

  1. 工程为组件化工程,即壳工程+组件的模式,业务逻辑大部分实现在组件内,作为壳工程的依赖参与构建

  2. 在这种模式下,我该如何优雅的查看组件的代码覆盖率。

2 回复

在HarmonyOS鸿蒙Next组件化架构下,查看黑盒测试的代码覆盖率可以通过使用华为提供的DevEco Testing工具。该工具支持在测试过程中自动收集代码覆盖率数据,并生成详细的覆盖率报告。你可以在DevEco Studio中配置测试任务,运行黑盒测试后,工具会生成覆盖率报告,展示哪些代码被测试覆盖,哪些未被覆盖。报告通常包括行覆盖率、分支覆盖率等指标。

更多关于HarmonyOS鸿蒙Next组件化架构下,该如何查看黑盒测试下的代码覆盖率的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next组件化架构下查看黑盒测试的代码覆盖率,可以采用以下方案:

  1. 使用Jacoco工具集成:
  • 在组件模块的build.gradle中配置jacoco插件
  • 为每个组件单独生成覆盖率报告,通过配置jacocoTestReport任务实现
  1. 多模块合并方案:
  • 在壳工程中配置jacoco插件
  • 使用jacocoTestReport合并各组件覆盖率数据
  • 通过sourceSets指定各组件源码路径
  1. 关键配置示例:
android {
    buildTypes {
        debug {
            testCoverageEnabled true
        }
    }
}

task jacocoTestReport(type: JacocoReport) {
    reports {
        xml.enabled true
        html.enabled true
    }
    sourceDirectories.setFrom(files(android.sourceSets.main.java.srcDirs))
    executionData.setFrom(fileTree(dir: "${buildDir}", includes: ["**/*.exec"]))
}
  1. 执行流程:
  • 运行单元测试生成.exec文件
  • 执行jacocoTestReport任务生成报告
  • 通过HTML报告查看具体覆盖率情况

注意:需要确保测试用例能触发组件代码执行,对于黑盒测试尤其要注意测试场景的覆盖完整性。

回到顶部