SuperAPI AI 工具集

openharmony-ut

测试与质量

查看项目

更新于 10-16 03:11

技能介绍

用途:自动化 OpenHarmony 单元测试(UT)与模糊测试(Fuzz Test)工作流,覆盖测试生成、编译、部署到设备以及执行。

配置:首次使用需收集项目根目录(默认 /root/OpenHarmony)、编译产物路径(默认 ${项目根目录}/out/rk3568/tests)、编译命令模板(默认 cd ${OH_ROOT} && ./build.sh --product-name=rk3568 --build-target ${TARGET})、Windows IP(hdc 连接用,端口固定 8710)。WSL 下可尝试自动获取 IP:WIN_IP=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}')。

连接验证:需依次执行 ping -c 3 ${WINDOWS_IP}、nc -zv -w 3 ${WINDOWS_IP} 8710、hdc -s ${WINDOWS_IP}:8710 list targets、hdc -s ${WINDOWS_IP}:8710 shell "echo 'connection OK'"。Windows 端可用 hdc_std start -l 启动 HDC 服务。

常用命令:编译 cd ${OH_ROOT}/ && ${BUILD_CMD} <TARGET_NAME>;部署 hdc -s ${WINDOWS_IP}:8710 shell "mkdir -p /data/test/" 与 hdc -s ${WINDOWS_IP}:8710 file send <TARGET_PATH> /data/test;运行 hdc shell -s ${WINDOWS_IP}:8710 "chmod +x /data/test/<TARGET_NAME> && /data/test/<TARGET_NAME>"。

流程:用户要求编写并运行时按编写、编译、部署、运行、修复顺序执行;仅要求运行时优先查找编译产物(cd ${OH_OUTPUT}/ && find . -name <TARGET_NAME>),找到则直接部署,找不到再编译。

规则:测试名必须与 BUILD.gn target 一致(如 LnnNetBuilderFuzzTest);放在对应模块 tests 目录;遵循 OpenHarmony HWTEST_F 规范,不使用 GoogleTest main;常量须命名,禁止魔数。

限制:依赖 Windows 侧 hdc 服务与 USB 连接设备,网络、防火墙、hdc 版本兼容性均可能影响连接;详细说明见 environment.md、test-generation.md、build-guide.md、deployment.md、execution.md。