HarmonyOS鸿蒙Next中单个Module默认没有ohosTest只有test,如何解决无法使用UI测试框架问题
HarmonyOS鸿蒙Next中单个Module默认没有ohosTest只有test,如何解决无法使用UI测试框架问题
默认没有ohosTest, 如果是自己创建的,在编译时会报错> hvigor ERROR: The module target ‘ohosTest’ is not found in the ‘module_news_base_ts’.
Detail: Please check the command or module target configuration.
更多关于HarmonyOS鸿蒙Next中单个Module默认没有ohosTest只有test,如何解决无法使用UI测试框架问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html
【背景知识】
代码测试:DevEco Studio支持应用/元服务测试框架,提供测试用例执行能力,提供用例编写基础接口,输出测试结果,支持用户开发简洁易用的自动化测试脚本,支持代码覆盖率统计。
Instrument Test:测试用例存放在ohosTest测试目录下,需要运行在设备或模拟器上。Instrument Test支持ArkTS/JS语言。
【解决方案】
- 如果想要同时使用DECC-ArkTSUnit和DECC-JSUnit能力,需要在模块/src目录下分别创建ohosTest/ets/test、ohosTest/js/test两个文件夹。
- 创建上述文件夹后,创建js文件后,将光标置于代码中任意位置,单击右键 > Show Context Actions > Create Instrument Test或快捷键Alt+enter > Create Instrument Test创建测试类。
- 如果想要在DevEco Studio最上边的Run->Edit Confgurations->左上角的“+”->Instrument Test->Test Type中选择JS的话,需要删除模块/src/ohosTest文件夹。
更多关于HarmonyOS鸿蒙Next中单个Module默认没有ohosTest只有test,如何解决无法使用UI测试框架问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS Next中,如需使用UI测试框架,需要手动配置ohosTest模块。步骤如下:
- 在module目录下新建ohosTest文件夹
- 创建对应的测试目录结构(java/ohosTest/com.example)
- 在build-profile.json中配置testOhos类型:
"buildTypes": {
"testOhos": {
"runtimeOS": "HarmonyOS"
}
}
- 添加测试依赖:
"dependencies": {
"testOhosImplementation": "ohosTestImplementation '...'"
}
完成后即可编写UI测试用例。
在HarmonyOS Next中,UI测试框架确实需要ohosTest目录。针对这个问题,可以这样解决:
- 正确创建ohosTest目录结构:
- 在module目录下手动创建
src/ohosTest
目录 - 在其中创建
ets/test
目录结构
- 需要在
module.json5
中配置测试模块:
"buildTypes": {
"ohosTest": {
"sourceType": "test"
}
}
- 确保hvigor配置文件正确:
在
hvigorfile.ts
中需要包含测试模块配置:
import { ohosTest } from '@ohos/hvigor-ohos-plugin'
export default {
system: ohosTest()
}
- 测试用例示例结构:
ohosTest/ets/test/
└── Example.test.ets
- 如果是从旧项目迁移,可能需要更新SDK版本和构建工具链
注意:不要直接复制test
目录为ohosTest
,需要按规范创建完整结构。创建后执行clean和rebuild操作。