CTS测试流程和常见问题

CTS测试条件和步骤:

1. 需要使用linux系统主机

2. 需要在本地有AndroidSDK环境,最好要对应待测的Android大版本

3. 需要到https://source.android.google.cn/docs/compatibility/cts/downloads?hl=zh-cn下载对应测试套件。linux电脑应下载arm类别的测试套件(约4Gb)

4. 将待测设备调整到cts要求的条件下,如设置为英文语言环境,打开蓝牙开关等,详见谷歌网站说明 https://source.android.google.cn/docs/compatibility/cts

5. 需要主机和待测设备都连接外网

6. 执行命令 adb devices 确认已经连接到对应设备

7. 进入下载好的cts测试套件目录中执行命令:

cd android-cts-12.1_r9-linux_x86-arm/android-cts/tools./cts-tradefedrun cts -m CtsInputMethodTestCases 测试大模块

run cts -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.AdoptableHostTest#testEjected 测试大模块中的小项

8. 测试后都会形成日志文件(logs目录中device_logcat_test文件,或者直接grep对应日期目录)和结果文件(results目录中test_result.html文件)方便查看

CTS调试:

如果修改了/android/cts/目录下的文件比如加了日志,那就确认被修改文件所属Android.bp,编译对应模块(编译结果估计是apk的形式),替换到下载的CTS测试套件中的testcases目录中,就可以再跑一遍验证了

网络异常:

执行跑cts的命令后外网环境ping不通域名的情况,如:Caused by: java.net.UnknownHostException :play.googleapis.com

可以通过sudo vi /etc/hosts,在文件末尾添加ping不通的网站的对应ip地址(ip地址可以通过在内网环境下ping域名得到),如:

142.251.42.234 play.googleapis.com

172.217.160.106 androidpartner.googleapis.com

142.251.222.219 storage.googleapis.com