HarmonyOS Developer DevEco Studio使用指南-应用/服务测试
HarmonyOS应用/服务云端测试
概述
业务介绍
DevEco Studio通过集成HUAWEI DevEco Services云端服务平台能力,支持HarmonyOS应用/服务的测试,当前已支持应用/服务安全测试和应用/服务云测试。当前仅API Version 6~7支持。
HarmonyOS应用/服务的测试能力面向开发者提供7×24 小时的华为1+8超级终端调试环境,可以很好解决广大开发者在HarmonyOS应用/服务开发、测试过程中面临的设备短缺、成本和效率等问题。在无需人工干预的情况下,全自动完成应用/服务的测试任务,并快速出具专业详尽的测试分析报告,帮助开发者提前识别和精准定位解决应用/服务在运行阶段的各种问题,为消费者带来更佳的使用体验,增强用户粘性。
应用安全测试
HarmonyOS应用安全测试服务提供安全漏洞检测、隐私合规检测和恶意行为检测服务,提前检测和识别应用开发过程可能存在的安全性问题,满足HarmonyOS应用上架应用市场的要求。
当前已支持安全漏洞检测和隐私合规检测服务,恶意行为检测服务能力即将上线,敬请期待。
应用云测试
HarmonyOS应用云测试提供兼容性测试、稳定性测试、性能测试、功耗测试、UX测试5大特色能力,检测应用从安装、启动、运行和卸载的全生命周期中可能存在的问题,如应用崩溃、启动响应耗时长、前后台内存/CPU占用高、启动/卸载异常等,全方位检测应用质量。
UX测试暂时未集成到DevEco Studio中,可访问HUAWEI DevEco Service,进行HarmonyOS应用的UX测试。
丰富的真机设备资源
HarmonyOS应用云测试提供丰富的真机设备资源,覆盖华为1+8智能设备,包括手机、平板、智慧屏、智能手表、运动手表等设备,可以很好地帮助开发者解决设备资源短缺、测试成本高昂等问题。
当前已提供手机(Phone),平板(Tablet)、华为智慧屏(TV)和智能穿戴(Wearable)的设备资源,其它设备即将上线,敬请期待。
专业详尽的测试报告
针对每一项测试任务,无需人工干预,全自动化完成测试,并且快速出具专业详尽的测试报告。
以应用云测试中的兼容性测试为例,下图展示的是HarmonyOS应用在智慧屏设备上的兼容性测试结果,点击详情便可以查询详尽的测试报告。
应用安全测试
功能介绍
漏洞测试
通过对HarmonyOS应用生命周期建模和应用攻击面建模,采用静态数据流分析技术,提高漏洞发现的准确率,同时覆盖20余种攻击面,65+漏洞测试项,帮助开发者提前发现和识别漏洞隐患。在检测报告中,会针对每一项漏洞风险项给出明确的修复建议,可以帮助开发者快速修复漏洞。
隐私测试
通过动态检测和分析应用在设备上运行的隐私敏感行为,帮助开发者排查应用的恶意行为,构建纯净绿色的HarmonyOS应用。隐私测试支持17+项检测,包括获取地理位置信息检测、获取设备标识检测、获取通讯录信息检测、获取系统信息检测等。我们建议,HarmonyOS应用应遵循合理、正当、必要的原则收集用户个人信息,不应有未向用户明示且未经用户授权的情况下,擅自收集用户数据的行为。
隐私测试服务当前支持手机、TV设备,包格式包括Hap/APP。
前提条件
- 已注册华为开发者帐号,并完成实名认证,具体请参考帐号注册和实名认证。
- 已通过DevEco Studio开发完应用,并编译构建生成Hap或App,具体请参考DevEco Studio使用指南。
创建测试任务
- 在DevEco Studio中,单击菜单栏Tools > DevEco Test Services。如果未登录华为开发者帐号,首先会在浏览器中弹出登录华为开发者帐号的界面,登录后单击允许按钮进行授权。
- 选择“Security Test”页签,单击New Task创建测试任务。
- 在“Security Test”创建任务中,选择如下信息后,单击Confirm开始测试。
- Test Type:选择测试的任务类型,包括漏洞测试(Vulnerability Test)和隐私测试(Privacy Test)。
- App/Hap File:单击
按钮选择待测试的APP/HAP。其中漏洞测试支持TV和Lite Wearable的Java应用,隐私测试支持TV的Java应用。
- 等待测试任务完成。
查看测试报告
测试完成后,单击测试任务后的
按钮,查看测试报告,可以查看详细的测试结果。
以漏洞测试为例,在测试报告的概览页,可以查看测试任务的整体情况,包括漏洞的统计(致命、严重、一般和提示)和漏洞问题分布。
在安全漏洞的测试结果列表中,单击详情可以查阅详细的问题报告和修复解决方案。
应用云测试
功能介绍
兼容性测试
兼容性测试主要验证HarmonyOS应用在华为真机设备上运行的兼容性问题,包括首次安装、再次安装、启动、卸载、崩溃、黑白屏、闪退、运行错误、无法回退、无响应、设计约束场景。具体兼容性测试项的详细说明请参考兼容性测试标准。
兼容性测试支持TV、智能穿戴 (Wearable)设备和Phone。
稳定性测试
稳定性测试主要验证HarmonyOS应用在华为真机设备上运行的稳定性问题,包括崩溃/应用冻屏、内存泄露和踩内存,稳定性测试项的详细说明请参考稳定性测试标准。
稳定性测试支持Phone和TV设备,包格式包括Hap/App。
性能测试
性能测试主要验证HarmonyOS应用在华为真机设备上运行的性能问题,包括启动时长、界面显示、CPU占用和内存占用。具体性能测试项的详细说明请参考性能测试标准。
性能测试支持Phone和TV设备,包格式包括Hap/App。
功耗测试
功耗测试主要验证HarmonyOS应用在华为真机设备上运行的功耗,包括屏幕占用时长、WLAN占用时长、音频占用时长等。具体功耗测试项的详细说明请参考功耗测试标准。
功耗测试支持Phone,包格式包括Hap/App。
前提条件
- 已注册华为开发者帐号,并完成实名认证,具体请参考帐号注册和实名认证。
- 已通过DevEco Studio开发完应用,并编译构建生成Hap或App,具体请参考DevEco Studio使用指南。
创建测试任务
- 在DevEco Studio中,单击菜单栏Tools > DevEco Test Services。如果未登录华为开发者帐号,首先会在浏览器中弹出登录华为开发者帐号的界面,登录后单击允许按钮进行授权。
- 选择“Cloud Test”页签,单击New Task创建测试任务。
- 在“Cloud Test”创建任务中,选择如下信息后,单击Next。
- Test Type:选择测试的任务类型,包括兼容性测试(Compatibility Test)、稳定性测试(Stability Test)、性能测试(Performance Test)和功耗测试(Consumption Test)。
- App/Hap File:单击
按钮选择待测试的APP/HAP。
- 选择测试设备,单击Confirm,然后等待测试任务完成。
查看测试报告
测试完成后,单击测试任务后的
按钮,查看测试报告,可以查看详细的测试结果。
以兼容性测试为例,在测试报告的概览页,可以查看测试任务的整体情况,如测试通过率、问题分布、在各个测试终端上的问题分布情况。
单击测试设备后的查看详情按钮,可以查看测试任务详情信息,如测试截屏、资源轨迹、异常信息和日志信息。
原子化服务体检
功能介绍
原子化服务体检(Scoring Tool)是用于测试并评价HarmonyOS应用或原子化服务的质量,应用于开发者对HarmonyOS应用或原子化服务进行自测试,能快速提供评估结果和改进建议,帮助开发者迅速提升产品质量。
说明
原子化服务体验功能适用于API Version4~7的工程。
开发者可以通过DevEco Studio连接本地设备或远程真机,自主遍历HarmonyOS应用或原子化服务的功能,快速进行自测试,查看测试结果及评分。当前支持的测试类型包括兼容性、性能和设计约束。具体测试项及评分标准请参考评分方法及规则。
前提条件
- 在使用Scoring Tool对HarmonyOS应用或原子化服务进行测试之前,先要确保DevEco Studio与真机设备已连接或已连接远程真机。
- 对需要测试的HarmonyOS应用或原子化服务提前根据为服务/应用进行签名章节和编译生成HAP,打包带签名信息的HAP。
HarmonyOS应用测试
- 在DevEco Studio中,单击菜单栏Tools > Scoring Tool,弹出Scoring Tool页面。
- 在Scoring Tool页面选择HarmonyOS应用或原子化服务安装的Device。
- 在Scoring Tool页面单击+按钮,添加已签名的HAP。
说明
支持同时添加多个HAP,要求所有HAP的“bundleName”相同,且多个HAP中只能包含一个Entry。
- 在Scoring Tool页面底部单击Start开始测试。在测试过程中,请保持连接的设备为解锁状态,屏幕为点亮的状态,并在设备上手动遍历HarmonyOS应用或原子化服务的功能。
- 遍历操作完成后,单击Stop停止测试任务,查看测试结果。
评分方法及规则
原子化服务体检当前支持三种测试类型检测:兼容性、性能和设计约束。DevEco Studio会根据体检结果,计算出最后评分,满分为100分。评分的计算公式为:
评分 = 100*{Sum(单项得分*权重)/131}
说明
单项得分:满足检测规则为1分,不满足为0分。
各体检项检测规则及权重如下表所示:
体检类别 | 检测规则 | 权重 |
兼容性 | APP要求在其支持的OS版本上安装无问题 | 7 |
APP要求在其支持的OS版本上启动无问题 | 7 | |
APP要求在其支持的OS版本上卸载无问题 | 7 | |
APP运行稳定,无Crash,无冻屏 | 7 | |
运行不会出现崩溃、无响应问题 | 7 | |
性能 | 冷启动时间≤2000 ms | 7 |
滑动帧率,被测服务的各个界面帧率≥55 FPS | 7 | |
前台内存占用,被测服务启动30 s后,前台内存暂用≤500 MB | 7 | |
设计约束 | 必须明确FA支持设备类型 | 5 |
应用或者服务的Entry FA有且仅有一个 | 5 | |
每个服务至少支持1张服务卡片 | 5 | |
HarmonyOS服务中的FA为免安装且小于10M | 5 | |
HarmonyOS服务中的FA要求为非免安装 | 5 | |
禁止APP安装后在桌面自动添加多个图标 | 5 | |
FA对应的Module需配置为免安装 | 5 | |
所有Ability的label需唯一 | 5 | |
FA必须指定唯一MainAbility为操作入口 | 5 | |
MainAbility需配置默认服务卡片、图标、名称 | 5 | |
需声明最小和目标OS的SDK版本号 | 5 | |
APP集成native so需要64位 | 5 | |
分布式场景,必须配置兼容版本信息 | 5 | |
服务需配置图标、名称、描述、快照 | 5 | |
服务卡片主动刷新最高频率限定在30分钟1次 | 5 |