OpenHarmony开发——XTS测试与报错解决

135 阅读3分钟

1.测试流程

参考官网即可,流程以及很详细了。OpenAtom OpenHarmony 兼容性评测指南

我们需要做的是:

1)基于社区release版本移植,因为测试套件是与OH版本捆绑的,使用原来的系统可以规避许多问题

2)修改设备参数,且需要与兼容性平台一致。

  • 第一步,配置文件
// 设备OS信息
base/startup/init/services/etc/param/ohos_const/ohos.para
// 设备产品信息
base/startup/init/services/etc/param/ohos.para
  • 第二步,修改oem接口文件
..\test\xts\device_attest\services\oem_adapter\src\device_attest_oem_adapter.c
manuKey,即厂商秘钥

将16进制的文件内容赋值给 manufacturekeyBuf[]。【直接使用Notepad++等自带的转换功能(“插件” > “Converter” > “ASCII -> HEX”)】

// ..\test\xts\device_attest\services\oem_adapter\src\device_attest_oem_adapter.c
int32_t OEMGetManufacturekey(char* manufacturekey, uint32_t len)
{
 .....
    const char manufacturekeyBuf[] = {
          ....manuKey ...
    };
 .....   
}
OEMGetProductId 即产品ID

在接口OEMGetProductId里,替换productIdBuf[]的值为实际值。

int32_t OEMGetProductId(char* productId, uint32_t len)
{
    if ((productId == NULL) || (len == 0)) {
        return DEVICE_ATTEST_OEM_ERR;
    }
    const char productIdBuf[] = "OH0000ID";
 ......
}

2.ACTS报错

1)window_manager_config窗口配置

defaultWindowMode须为1,浮动窗口102,导致窗口中页面坐标位置变化了,这时一些acts测试用例无法通过测试。

2)测试套件需要与系统匹配

从OpenAtom OpenHarmony 兼容性评测指南 下载套件,最好不要自己编译。ACTS测试项很多,建议先统一测试一遍,错的再单独测试。

3.HATS报错

测试最小集指令如下(一行):

run -l HatsFreePerformanceTest ; HatsSafeUnlinkTest ; HatsAccesstokenidTest ; HatsEncodePointerTest ; HatsMallocPressureTest ; HatsMemoryTrackerTest ; HatsModifyPointerTest ; HatsOpenPosixTest ; HatsPrctlTest ; HatsPurgeable ; HatsHdfManagerHdiTest ; HatsHdfManagerServiceTest ; 

这部分涉及驱动,报错则逐项排除,目前基于OH Release基线版本暂未遇到错误。

4.SSTS报错

测试指令如下:

  run ssts

1) 补丁日期报错

修改文件//base/startup/init/services/etc/param/ohos_const/ohos.para,补丁日期不可超60天前

const.ohos.version.security_patch=2024/08/01
const.ohos.releasetype=Release
const.ohos.apiversion=11
const.ohos.fullname=OpenHarmony-4.1.7.5

2)其他报错

selinux需要打开,适配时基于OH release分支。

DD一下:欢迎大家关注公众号<程序猿百晓生>,可以了解到以下知识点。

`欢迎大家关注公众号<程序猿百晓生>,可以了解到以下知识点。`
1.OpenHarmony开发基础
2.OpenHarmony北向开发环境搭建
3.鸿蒙南向开发环境的搭建
4.鸿蒙生态应用开发白皮书V2.0 & V3.0
5.鸿蒙开发面试真题(含参考答案) 
6.TypeScript入门学习手册
7.OpenHarmony 经典面试题(含参考答案)
8.OpenHarmony设备开发入门【最新版】
9.沉浸式剖析OpenHarmony源代码
10.系统定制指南
11.【OpenHarmony】Uboot 驱动加载流程
12.OpenHarmony构建系统--GN与子系统、部件、模块详解
13.ohos开机init启动流程
14.鸿蒙版性能优化指南
.......

5.验证报错

1)设备参数报错

运行镜像,连接网络,使用windows power shell 执行hdc shell,进入控制台

执行attesttestclient,看到softwareResult [-1]说明平台参数与设备参数不一致。仔细核对,尤其是厂商名称不在产品信息页面,在认证信息界面。

修改设备参数也不必每次都编译烧录,可以铜鼓hdc工具单独修改文件。下面指令:

#发送ohos.para文件到设备,注意路径要匹配,依次执行以下指令
hdc shell mount -o rw,remount /
hdc file send E:\rk3568_images\ohos.para /etc/param/ohos.para
hdc shell chmod 777 /etc/param/ohos.para
hdc shell reboot

hdc shell mount -o rw,remount /
hdc file send E:\rk3568_images\display_manager_config.xml /etc/window/resources/display_manager_config.xml
hdc shell chmod 777 /etc/window/resources/display_manager_config.xml
hdc shell reboot

等待设备重启,hdc shell进入设备控制台,执行attesttestclient,看到 authResult [0]、 softwareResult [0]说明验证通过。

2) 密钥错误

有时测试遇到authResult [-1],可能因为平台申请的证书过期了(7天过期),此时只需更换tokenA即可。

3)网络访问超时

有时测试遇到authResult [-2],可能是测试的服务器拥堵,(实测周末测试效率很高。),验证设备能否访问服务器:

ping https://www.openharmony.cn