android cts 目录

来源:互联网 发布:闲鱼上推淘宝客链接 编辑:程序博客网 时间:2024/06/07 04:00

CTS(Compatibility Test Suit)是Google为Android发布的一套兼容性测试用例。由于Android是开源的,对于Google Android的开发联盟中的Motorola、Samsung、Qualcomm 、Sony Ericsson、中国移动、ZTE、华为等,底层的代码也是开放的。手机制造商及运营商可以在Android上打造,定制自己特有的手机操作系统,这势必在源码级别上对Android系统进行代码的添加和更改。如果不规范这些更改则会给上层的应用开放的移植带来问题(那个时候你会看到MOTO上跑的愤怒的小鸟会在三星的Android手机上运行不了,每个应用需要都要发布不同厂商的Android手机的版本)。因此,Google为Android提供了一套兼容性测试用例CTS,对手机的硬件,软件,接口,性能进行测试。只有通过CTS测试的Android手机系统,Google才会颁发许可,以保证不同生产商之间的Android系统的兼容。从CTS包内部来看,包中是一系列的Junit TestSuit,已经打包成apk文件。通过已经配置好的XML文件和相应的命令即可对手机Android系统进行自动化测试,有点类似于使用Ant。测试的结果会以XML格式的文件返回,结果文件是可以通过Firefox、IE等进行查看。测试结果中有Junit TestRunner中所熟悉的状态条,同样是绿色表示通过,红色表示此测试用例没通过。

Compatibility Definition, 大体阅读一下, 它定义了一些需求:

数据: 必须实现一种无线连接, 速率达到 200Kbit/Sec
Camera: 至少 2M pixels
重力加速: 必须有, 3维, >50Hz
指南针: 必须有, 3纬, >10Hz
GPS: 必须有
内存: 至少 92M (不包括专用内容)
Nand: /data 分区至少 290M
性能: 启动时间: 浏览器 < 1300ms
MMS/SMS < 700ms
AlarmClock < 650ms
第二次启动一个应用的时间不能超过第一次启动时间。
CTS 测试: 必须通过最新的 CTS
升级: 必须有一种办法可以升级全系统。 可以为:
OTA USB SD卡


编译 cts:

下载Android-2.1系统,并编译。

$ . build/envsetup.sh               //配置选项,并编译android源码
$ make cts                                 //android源码编译好后,在编译cts


Android的CTS测试,英文为Compatibility Test Suite,意为兼容性测试。只有通过CTS测试的设备才有可能获得Android的商标和享受Android Market的权限。以下分享我对Android CTS的认识。

一、取得Compatibility Test Suite的两种方法:

(1)可以从http://source.android.com/compatibility/downloads.html下载最新版本的Compatibility Test Suit;

(2)也可以通过编译Android源代码的方式获得。在android源代码目录下输入make cts命令来编译CTS,之后会在out/host/linux-x86/cts/下生成android-cts文件夹。这个文件夹就是Compatibility Test Suit。

二、运行CTS的方法,步骤如下:

(1)进入目录android-cts,该目录是通过上面那两种方法获得的。在android-cts目录下会有3个文件夹,其中一个是tools。

(2)进入tools目录,输入./startcts来启动CTS。

(3)如果运行成功会出现Android CTS version 2.3_r1的字样(我的android的版本是2.3的)。如果有连接设备到PC上还会出现Device(设备ID)connected的字样。这里设备可以是连接PC的android的机器,也可以是模拟器。

三、CTS测试的方法:

(1)在cts_host>下敲入help,会显示cts下的许多命令。ls –plan命令显示google自带的测试方案,如:Java、Signature、Android、CTS、VM、RefApp、Performance、AppSecurity。其中Performance这个方案是google暂不要求的。Java、Signature、Android、VM、RefApp、Appsecurity方案都是CTS方案的子集。

(2)用命令ls -d来查看已连接的设备,CTS测试之前我们必须保证至少有一个设备连接上。

(3)输入命令start –plan CTS来执行CTS测试方案,该方案有两万多条测试项目,需要很长时间,因此除了第一次测试之外,不建议这么做。我做的都是针对某些包的测试。如果连接了多个设备的话需加上-d参数,后面跟上设备id来告诉CTS需要测试的设备。

(4)对单独一个包进行测试的方法:start –plan CTS –p 包名;推荐用这种方法来进行针对性的测试。需要知道有哪些包名,可以输入命令:ls –plan CTS

(5)也可以针对单独一个case进行测试:start –plan CTS –test 类名#方法名

四、查看测试的结果:

测试生成的log在\android-cts\repository目录下以log+测试时间.txt命名。测试报告在android-cts\repository\results目录下,也是以测试时间命名。

五、注意事项:

(1)测试前需要安装一个apk:adb install -r android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk然后在设置里面的辅助功能中会多一个Delegating Accessibility Service选项,将这个选项勾起。

(2)在android设备设置中:显示->屏幕超时->选取30分钟

(3)在android设备设置中:应用程序->开发->勾选保持唤醒状态。

(4)保证测试前,android设备在主界面状态。

(5)将android设备的语言设置为英文。



原创粉丝点击