为保证应用在不同机型都能以最优的状态运行,给用户带来更好的体验,安卓绿色联盟联合华为终端开放实验室,通过 deveco(deveco.huawei.com)平台,为开发者提供了基于《安卓绿色联盟应用体验标准 2.0》(以下简称绿标 2.0)的五大标准免费检测服务。

为帮助开发者更深入了解各检测项功能,本文华为自动化测试专家郑鑫将对相关技术点展开详细讲解。

image

绿标 2.0 对应用的使用场景做了对应分类,包括登录、导航、聊天等,不同的场景有不同的遍历方式。为保证遍历的通透性,兼容性测试搭建了深度遍历框架,框架底层的 CVservice 可帮助测试整个应用,异常 ANR 堆栈捕获可在系统发生错误时将其记录并精准定位到异常对应的堆栈和 Logcat 日志。

image

稳定性测试技术

为让用户不再受闪退及其他不稳定因素困扰,绿标 2.0 对应用稳定性提出了新的标准,主要包括闪退率和 ANR 两大维度。传统的稳定性测试方法是基于 Monkey 的随机测试,效率较低,问题难以复现且耗时,经过改进后使用了基于控件识别技术的随机遍历测试技术效率更高,问题更易复现。

性能测试技术

性能测试的流程主要包括测试开始时性能数据采集、APP 启动及相关数据采集等。与前文提到的遍历测试不同的是,它会在做性能功耗的相关数据采集,采集的数据会与当前操作相对应并被保存,包括权限处理,CPU 都是基于此操作来进行。

image

性能测试采用 UI 遍历框架,UI 自动化与数据采集模块之间使用的是轻量级 RPC 中间件来实现数据交互,驱动与 UI 测试工具之间基于 abd 构建的 TCP 通讯,最后把数据进行汇总,形成完整报告。

image

功耗测试技术

应用的功耗测试方法主要是通过应用后台对设备的占用频次和时长来衡量和判断该应用的功耗。

image

在对应用检测的过程中,Alarm 不需要频繁唤醒 APP,不恰当的使用 Alarm 会导致系统 APP 得不到合理休眠,造成耗电。降低 Alarm 的频率,尽量不要使用高精度的 Alarm 唤醒,在对应用进行功耗检测的时候可把 Bugreport 导出来,便于开发者进一步定位,这个过程中可以看到整个硬件层面的情况,包括 CPU、TPS、WIFI 活跃行为。

安全测试技术

目前国内应用上线时多数使用的是三方组件,杀毒引擎检测主要依赖病毒引擎库,如果引擎库没有及时更新组件,极易产生误报行为。

DevEco 云测平台的安全测试是基于华为云杀毒对应用进行无死角扫描,测试内容包括病毒扫描、恶意广告、安全漏洞、隐私泄露、高危权限等。绿标 2.0 对应用对应的权限进行了分类,安全检测系统会对每类进行检测的应用进行判断,是否使用了合理的权限,如权限不合理,系统会将其打点标出同时邮件通知开发者,并提供截图或业务说明。

image

绿标评测发布计划

安卓绿色联盟会结合应用测试的情况不定期推出相应的评测报告,并从绿标 2.0 五大标准的维度对应用的情况进行排名和打分,旨在帮助开发者提升应用的质量水平。

通过检测的应用,可在华为应用市场上看到 “绿色应用” 的标签。未通过检测的应用也可通过华为终端开放实验室绿标检测能力进行检测更新,详情请登录:https://deveco.huawei.com/


↙↙↙阅读原文可查看相关链接,并与作者交流