手机大厂必备测试技能 -CTS 兼容测试

本贴最后更新于 1561 天前,其中的信息可能已经时移世异

何为CTS?

相信小伙伴们都有用过各种款式的Android手机,如小米、魅族、华为、oppo、vivo,虽然他们的页面长的都不太一样,比如小米的长这样:

image.png

魅族的:

image.png

oppo的:

image.png

还有垂死挣扎的锤子...

image.png

但是这些手机其实都是搭载的Android系统,只不过国内的手机厂商在原生Android的基础上进行修改/定制。其实原生的Android长这样:

image.png

这么多手机厂商都要改造成自己的UI,甚至要对Android底层进行改动,难免不会改出什么问题。所以Google为了这些定制的系统能够符合统一的规范、兼容Android底层的API,就引入了CTS测试。

以下是其官方介绍

Compatibility Test suite系列兼容测试

Google定义了一个兼容性规范(Compatible Definition),而CTS就是为了确保某个测试符合该规范。从而基于Android的应用程序能在基于同一个api版本的设备上面运行。通过CTS测试的device可以获得android的商标,并且享受android market的权限。

为什么需要CTS?

由于Google的开放策略,越来越多的终端厂商以及互联网企业加入到手机终端商的领域,加剧了Android移动终端的碎片化,导致出现基于Android客户端的App产品因为兼容性差,不能在用户手机上正常安装、运行错误、强制退出等问题,严重影响用户的体验。

通过CTS测试,可以保证

CTS配置

下载和配置CTS

官网:http://source.android.com/compatibility/downloads.html

注意:此网站需要FQ

下载文件:(Android 4.4为例)

配置CTS:

CTS目录结构说明

image.png

CTS测试流程

测试准备

step1:测试环境:

step2:工具准备:

step3:手机配置:

测试执行

进入到/android-cts/tools目录输入:

./ cts-tradefed

进入测试环境

再执行run cts --plan CTS进行整体测试

run cts -c android.app.cts.SystemFeaturesTest

测试过程持续时间超过10+小时

测试结果会生成在android-cts/repository/results目录中的
testResult.xml

Log日志文件位于android-cts/repository/logs目录下

CTS操作基本命令

分类 命令 说明
Host help 基本命令帮助说明
Host help all 全部命令帮助说明
Host exit 退出控制台
Run run cts --plan test_plan_name 运行指定计划
Run run cts --package/-p 运行指定包
Run run cts --class/-c [--method/-m] 运行指定方法
Run run cts --continue-session session_ID 继续运行指定回话ID
Run run cts [options] --serial/-s device_ID 运行指定设备
Run run cts [options] --shards number_of_shards 运行多个设备
Run run cts --help/--help-all 运行帮助
List l/list d/devices 列出连接的设备
List l/list packages 列出所有测试包
List l/list p/plans 列出所有测试计划
List l/list r/results 列出已经保存的结果

CTS测试结果分析

image.png

测试报告的fail项分为两类:

1 操作
shakebabe 在 2020-08-06 17:24:59 更新了该帖
回帖
请输入回帖内容 ...