#!/usr/bin/env bash # 本地单元测试 + 覆盖率(T-M1-08,R-18 处置)。 # # devecocli 无 test 子命令,故用 DevEco 自带 hvigorw 跑本地单测(已获授权的例外)。 # 注意:本机环境变量 DEVECO_SDK_HOME 可能指向不含目标 SDK 的位置,这里强制指向 # DevEco Studio 自带 sdk(含 6.1.1(24))。CI 环境需装 DevEco 或用 DEVECO_HOME 覆盖。 # # 用法:bash scripts/test.sh # 报告:entry/.test/default/outputs/test/reports/(含 coverageReport.json + html) set -euo pipefail ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" cd "$ROOT" DEVECO="${DEVECO_HOME:-/c/Program Files/Huawei/DevEco Studio}" export DEVECO_SDK_HOME="${DEVECO_SDK_HOME_OVERRIDE:-${DEVECO}/sdk}" NODE="${DEVECO}/tools/node/node.exe" HVIGOR="${DEVECO}/tools/hvigor/bin/hvigorw.js" echo "==> [test] 本地单测 + 覆盖率 (DEVECO_SDK_HOME=${DEVECO_SDK_HOME})" "${NODE}" "${HVIGOR}" test \ --mode module \ -p module=entry@default \ -p product=default \ -p buildMode=test \ -p coverage=true \ "$@" echo "==> [test] 完成。覆盖率报告:entry/.test/default/outputs/test/reports/coverageReport.json"