鸿蒙应用覆盖率
TIPS: 本文简单介绍如何构建覆盖率插桩的应用,有关覆盖率更详细的内容请参考https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-ui-test
hvigor构建开启覆盖率插桩
hvigor 命令行构建鸿蒙应用时,打开覆盖率插桩需要增加两个参数-p ohos-test-coverage=true -p coverage-mode=black
完整的构建命令(在DevEco的Terminal中执行)
hvigorw --mode module -p product={productName} --analyze=normal --parallel --incremental -p buildMode=debug -p ohos-test-coverage=true -p coverage-mode=black -p debugLine=true clean assembleHsp assembleHap
productName:当前生效的product,可以通过点击DevEco Studio右上方图标
进行查看。
安装应用
单包应用安装
hdc install {SignedHapPath}
多包应用安装
hap+hsp多包场景,需要把多个包push到设备上同一文件夹,再执行bm install -p dir 安装
# 如果已运行,强制停止应用
hdc shell aa force-stop {bundle-name}
# 创建临时目录
hdc shell mkdir data/local/tmp/{bundle-name}
# push 多个包
hdc file send {project}/{module1}/build/default/outputs/default/{module1}-{productName}-signed.hap data/local/tmp/{bundle-name}
hdc file send {project}/{module2}/build/default/outputs/default/{module2}-{productName}-signed.hap data/local/tmp/{bundle-name}
...
# 安装多包应用
hdc shell bm install -p data/local/tmp/{bundle-name}
# 删除临时目录
hdc shell rm -rf data/local/tmp/{bundle-name}
HapRay收集覆盖率的数据,生成覆盖率报告
在设备上生成的覆盖率数据包含源文件的相对地址,生成报告时需要指定HAP应用工程文件路径,用于读取源码生成覆盖率报告。
cov:
# HAP project path
hapProjectPath: '/your_hap_project_path'
报告所处位置hiperf/step{index}/coverage