M1: 桥引擎单测跑通,桥核心覆盖率 87.3%(T-M1-08 完成,R-18 处置)
- 修复 2 个测试用例(漏先触发 flushMessageQueue 注册 _fetchQueue 回调) - 补 set_default/remove、FakeWebController、send 用例,共 15 用例全通过 - 桥核心覆盖率 87.3%(MessageCodec/Message 100%、BridgeController 83%、 HandlerRegistry 88%)≥80% 达标;Adapter/BridgeJsLoader 系统耦合由 V1 真机覆盖 - scripts/test.sh:本地单测 + 覆盖率运行脚本(devecocli 无 test,用 DevEco hvigorw + 强制 DEVECO_SDK_HOME 指向自带 sdk);ci.sh 集成单测(SKIP_TESTS=1 可跳过) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
38307e8d71
commit
159dcf2687
+6
-5
@@ -21,10 +21,11 @@ fi
|
||||
echo "==> [CI] 多模块构建校验:devecocli build --build-mode ${MODE}"
|
||||
devecocli build --build-mode "${MODE}"
|
||||
|
||||
# 单元测试:当前 devecocli 无 test 子命令;待 M1 桥引擎单测(T-M1-08,
|
||||
# MessageCodec/HandlerRegistry/BridgeController ≥80% 覆盖)落地并确定运行方式
|
||||
# (hypium)后,在此启用,例如:
|
||||
# echo "==> [CI] 单元测试"
|
||||
# <hypium 本地单测运行命令>
|
||||
# 单元测试 + 覆盖率(本地单测)。devecocli 无 test 子命令,故经 DevEco hvigorw(见 test.sh)。
|
||||
# 需 DevEco 环境;CI runner 无 DevEco 时设 SKIP_TESTS=1 跳过。
|
||||
if [ "${SKIP_TESTS:-0}" != "1" ]; then
|
||||
echo "==> [CI] 单元测试 + 覆盖率"
|
||||
bash "${ROOT}/scripts/test.sh"
|
||||
fi
|
||||
|
||||
echo "==> [CI] 校验通过 (${MODE})"
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
#!/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"
|
||||
Reference in New Issue
Block a user