Android CTS
1.什么是CTS
CTS是google制定的兼容性测试包(Compatibility Test Suite),只有通过CTS测试的设备才有可能获得Android的商标和享受Android Market的权限。其目的是用来规范Android设备开发商防止厂商对Android的改动影响其SDK API的兼容性,确保设备运行的Android系统全面兼容Android规范,即第三方应用程序安装到该厂商的机器上都能正常运行,给用户带来更好的体验。Google还提供了一份兼容性标准文档(Compatibility Definition Document, CDD)来作为参考。CTS会自动化运行同时也会测试硬件(比如蓝牙,WIFI),跑完之后会出一份详细的报告,告诉你哪些地方没通过。我们实际使用CTS的过程中,很可能需要根据特定的要求,来定制自己的TestPlan。这时就需要自己编译CTS。
2.获取CTS包
我们有两种方式可以获取CTS包。
(1)从源码编译:
在Android系统源代码目录下运行 make cts 即可以得到CTS包,生成文件在out/host/linux-x86/cts/android-cts/ 目录下
(2)从google官方下载编译好了的CTS包:
下载地址为:http://source.Android.com/compatibility/downloads.html。
其中testcases中为测试用例,主要是一些APK,tools目录下为主机工具
3. 使用CTS
(1)运行CTS脚本
脚本位于android-cts/tools/下,cd进入此目录,然后执行脚本
./cts-tradefed
(2)执行CTS测试
CTS的case位于:Android_Source_Code/cts/tests/tests/。注意,测试CTS的时候,设备不能处于休眠状态,可以在:设置 ⇒ 开发 ⇒ 将保持唤醒状态勾中,这样在USB连接状态下,设备不会处于休眠状态。
1.执行整个CTS测试:run cts –plan CTS。花费较多时间,建议晚上测试。
2.测试一个包:run cts -p <包名>。参数-p是指测试的是一个package。例如要测试android.view.cts包下的所有case,执行命令:
run cts -p android.view.cts
3.测试一个类:run cts -c <类名>。类名前需要加上包的名字,参数-c是指测试的是一个class。例如要测试android.view.cts包下的WindowTest类,执行命令:
run cts -c android.view.cts.WindowTest
4.测试一个类中的case:run cts -c <类名> -m <case名>。case名是指类下的method名,参数-m是指测试的是一个method。接上例,要测试android.view.cts包下的WindowTest类中的方法testDecorView,执行命令:
run cts -c android.view.cts.WindowTest -m testDecorView
5.查看帮助:
run cts –help
4.查看测试报告及log
CTS测试开始时,系统会在android-cts/repository/results下,以测试开始的日期和时间命名,生成一个文件夹。测试完成后,系统会在该文件夹下,生成一个xml格式的测试报告,供开发人员查看。
log的保存与result一样,也是以测试开始的日期和时间命名,保存在android-cts/repository/logs下。
参考资料:
http://blog.csdn.net/yunnywu/article/details/7978877
Android CTS的更多相关文章
- 监听Android CTS测试项解决方案(二)
二,监听当前测试项是否是Accelerometer Measurement Test测试项 通过第一种方式介绍的,我们可以得到当前处于活动状态的Activity类似监听CTS测试当前的测试项.但是由于 ...
- 监听Android CTS测试项解决方案(一)
前言: 首先这里需要详细叙述一下标题中"监听Android CTS测试项解决方案"的需求.这里的需求是指我们需要精确的监听到当前CTS测试正在测试的测试项. 因为我们知道CTS认证 ...
- 如何debug android cts
启动和关闭ADB服务(adb start-server和adbkill-server) 经作者测试,模拟器在运行一段时间后,adb服务有可能(在Windows进程中可以找到这个服务,该服务用来为模拟器 ...
- Android CTS測试Fail项改动总结(四)
Android5.1上的測试 1.android.security.cts.SELinuxDomainTest# testInitDomain fail 打印的log junit.framework. ...
- android CTS测试
CTS认证是获得Google推出的Android系统中Android Market服务的前提 CTS兼容性测试的主要目的和意义在于使得用户在Android系统的应用过程中,有更好的用户体验,并展现出A ...
- Android CTS 测试总结【转】
Android CTS 测试总结[转] 最近一直在做Android兼容性测试,根据Android官网给出的android-cts-manual 配置好了device后,开始测试. 首先配置软件环境: ...
- Android N和O中使用adb shell dpm set-device-owner 'com.android.cts.verifier/com.android.cts.verifier.managedprovisioning.DeviceAdminTestReceiver' setup Device Owner失败
PC端出现如下log: D:\workspace\AndroidO\CTS\CTS_Verifier>adb shell dpm set-device-owner 'com.android.ct ...
- Android CTS Test
什么是CTS测试?了解这个问题前,我们先来搜索了解一遍“Google GMS 认证”.GMS全称为GoogleMobile Service,即谷歌移动服务.说白了GMS其实就是一系列谷歌的应用集合.谷 ...
- Android CTS Test failed to run to conmpletion 测试超时问题
引用“Android cts all pass 全攻略”里面的一段话: ❀ testcase timeout 测试某个testcase的时候一直出现 “........”,迟迟没有pass或者fail ...
- android CTS 介绍
[转]http://blog.csdn.net/pugongying1988/article/details/6976091 一.为什么需要兼容性测试(以下称CTS)? 1.1.让APP提供更好的用户 ...
随机推荐
- UOJ67 新年的毒瘤
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...
- 刻录DVD.Win7系统盘(U盘)
ZC:Win7x86的U盘安装盘做好之后,U盘 里面会留有 引导信息,在以后不想要它(引导信息)的时候 该如果将它删掉?直接普通的格式化 能行吗? ZC:(20180423)发现,UltraISO制作 ...
- Aix-Linux查看系统信息
1.查看内存.磁盘等使用情况 命令:nmon 输入命令nmon之后,按M键memory,N键NetWork,J键查看目录使用情况. 2.查看防火墙 命令:smit 输入之后按照图形化操作 Commun ...
- Codeforces Round #435 (Div. 2) c+d
C:给n和k要求,找出n个不同的数,使得亦或起来等于k 可以先预处理从1到1e5,找亦或起来等于(11111111111111111)(二进制)的所有对数,然后四个一起亦或就是0了,再和k亦或 可以看 ...
- Java面试题上
1.面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:- 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些 ...
- 16-THREE.JS 半球光
<!DOCTYPE html> <html> <head> <title></title> <script src="htt ...
- 制作导航菜单分隔线的总结:用css3
经过百度统计中国中使用谷歌浏览器比较多,我很奇怪,我身边的同事很少用谷歌,唯一我用谷歌的原因就是看上它调试能力和模拟手机. 下面是我个人制作的 预览用谷歌浏览器. <!doctype html& ...
- KVM-环境安装
1.操作系统安装 本文采用Centos6.4X64操作系统,也可以采用RHEL/CentOS6.x. (1)查看系统版本.内核版本 ##查看系统版本 [root@KVM ~]# cat /etc/re ...
- HTML实用案例(1)—— 左侧菜单,右侧内容的布局(带左侧菜单点击隐藏显示效果)
效果图 代码部分 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" ...
- uva10780(分解质因数)
可以直接用高精度来暴力求. 也可以不用高精度: 把m分解质因数,记录每个因数和它的次数.然后计算每个因数在n的阶乘里出现了多少次,再把这个次数除以它在m中的次数,就是可能的k值.取最小的k. #inc ...