原文网址:http://blog.sina.com.cn/s/blog_539ad34301012764.html
做CTS测试已经一月有余,经过不断的摸索,现总结经验,与大家分享。
一.Download CTS
1.1打开浏览器输入连接: http://source.android.com/compatibility/downloads.html
1.2选择对应Android版本的CDD文档(介绍CTS测试),CTS测试包下载(测试包会不断更新),android-cts-verifier-4.0.3_r1-linux_x86-arm.zip,android-cts-media-1.0.zip
1.3将下载的CTS测试包解压到相应文件夹里面应包含:android-cts文件夹里面包含Docs、Repository、Tools三个文件夹。
1.4 下载android SDK(仅需要ADB工具)
二.调整系统状态
2.1使用user mode的image将TV版本烧成user模式
2.2 执行系统重置,恢复为出厂状态
2.3 进入Factory mode,将ADB连接状态设为TCP/IP打开端口5555
2.4测试前需要安装apk:adb install android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk
然后在设置里面的辅助功能中会多一个Delegating Accessibility Service选项,将这个选项打开。
2.5 测试前需要安装apk:adb install android-cts/repository/testcases/CtsDeviceadmin.apk
2.6 测试前需要安装apk:adb install CtsVerifier.apk
在设置安全->选择设备管理器对多出三个选项,将这三个选项勾选上并激活
2.7将SD卡清空。在SD卡中新建目录test, 将android-cts-media-1.0.zip解压到test目录中,将SD卡插入TV中。确定SD卡为可读可写状态。
2.8在 android设备设置中:安全->屏幕安全保护->自动锁定设为None
2.9在 android设备设置中:开发人员选项->保持唤醒状态,允许模拟地址两项勾选
2.10将 android设备的语言设置为英文。
2.11将WIFI打开,连接一个可用AP
2.12 将ethernet打开并连接上(若硬件支持USB ADB debug则可忽略此项)
2.13设置->输入语言设为android
2.14 因我们伟大的党的金盾工程,我们无法连接上google server,而有些case必须要通过连接到google server才可以测试。可以有很多种方法翻墙出去,下面介绍的是使用VPN翻墙法
设置->网络设置->更多
选择VPN
a. Set PW
b. Add VPN
c. 类型:PPTP
d. PPP加密disable
e. 点确定添加成功
f. 选择添加好的VPN,输入用户名和密码,连接成功。(连接VPN前先确定网络连接是否正常,VPN依赖于internet连接)
2.15 将TV设到Home screen
三.RUN CTS
3.1 先确定linux 系统的adb path是否设置正确(详见附录)
3.2 打开终端,进入android-cts/tools目录
执行命令:
cd android/tools
adb connect <TV的ethernet IP>(如果使用ADB USB debug则忽略此项)
3.3进入CTS,执行cts-tradefed脚本
执行命令:./ cts-tradefed
注:有时候进入CTS测试状态后无法出现cts-tf >,此时电脑按一个回车键就可以了。这是CTS的一个小bug
3.4开始整个CTS测试
执行一个plan:run cts --plan <plan名称>
仅测试一个包:run cts –p <测试包名称>
多台TV同时测试:run cts –s 设备名称 –-plan <plan名称>
其他测试命令请参阅附录
3.5测试结果
测试结果在android-cts/repository/results目录下
注意事项:CTS测试中不能对TV做任何操作,故测试时请将摇控器移走。
附录:
1. 如何设置adb path
Shell 命令:
root@test-ThinkCentre-XXXX:~# cd ~
root@test-ThinkCentre-XXXX:~# vim .profile
在profile文件中添加
if [ "$BASH" ]; then
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
fi
mesg n
PATH=$PATH:/home/test/tool/UpdateSmartBoardImageSOP:
有些linux PC系统是需要定义bash文件来达到设置路径
> vim /etc/bash.bashrc
在文件的最后加上下面的设置
export PATH=$PATH:/home/test/tool/UpdateSmartBoardImageSOP:
Path地址为ADB tool的存放绝对路径。
设置完path重起系统
2. CTS命令集
2.1 如何看seesion ID
cts-tf>l r
CTS会列出seesion ID号和对应的测试result文件夹名
2.2 Continue test
如果测试过程中系统死机重起了,可以中断CTS测试,通过以下的命令继续刚才的测试
run cts –-continue-session <seesion ID>
2.3 测试pass/fail/notExecuted/timeout case
Add derivedplan –plan <新建的plan名称> --session session-ID –r [pass/fail/notExecuted/timeout]
run cts –plan <刚才新建的plan>