原文网址:http://blog.csdn.net/shi_xin/article/details/42262675

1.CTS下载

打开下面网址,

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

以android5.0为例,进入页面后,点击Android 5.0 R1 Compatibility Test Suite (CTS) - ARM进行下载;

当然,如果打不开上面的网址,就是网络没有FQ,进行网络FQ后,就可以打开网页了。

我的配置方式:修改浏览器的代理,将自动配置代理URL设置为:http://10.5.2.98/proxy.pac

2.JDK配置

android5.0需要的PC jdk环境为jdk1.7,并切换jdk为1.7

android不同版本对应不同版本的jdk,在网上查一下,对应修改下pc的jdk版本;

3.链接手机

链接手机,开启usb调试 ,确认电脑已经链接上了手机

终端运行adb devices,确认下是否链接好手机。

4.运行CTS

解压下载文件Android 5.0 R1 Compatibility Test Suite (CTS) - ARM,

进入android-cts/tools/,执行cts-tradefed脚本文件。

5.设置手机

1.语言设置为English;

2.测试CTS的时候,设备不能处于休眠状态,进入security选项,将屏幕锁定设置为none

可能不一样,总之是要将锁屏取消;

3.开启GPS;

4.连接一个可FQWifi网络;

5.开启USB调试,勾选Stay awake,Allow mock locations;

6.安装CtsDeviceAdmin.apk后勾选Device administrators的前两项;

其中,CtsDeviceAdmin.apk位于下载的cts解压包目录下;

android-cts/repository/testcases下。

=================================================================================

到此,基本配置完成,如果是开发人员,一般不需要跑所有的case,只需要跑自己的case就ok。

若跑所有的case,则在4步骤操作完后,弹出的终端上输入

run cts --plan CTS。

对于开发人员跑特定的case:

A。run cts -p <包名>。参数-p是指测试的是一个package。例如要测试android.view.cts包下的所有case,执行命令:

run cts -p android.view.cts

B。测试一个类:run cts -c <类名>。类名前需要加上包的名字,参数-c是指测试的是一个class。例如要测试android.media.cts包下的AudioTrackTest类,执行命令:

run cts -c android.media.cts.AudioTrackTest

C。测试一个类中的case:run cts -c <类名> -m <case名>。case名是指类下的method名,参数-m是指测试的是一个method。接上例,要测试android.media.cts包下的AudioTrackTes类中的方法testPlayStreamData,执行命令:

run cts -c android.media.cts.AudioTrackTest -m testPlayStreamData

D。若需要循环测试某一个case;则加入loop

run cts –c android.media.cts.AudioTrackTest –m testPlayStreamData --loop --min-loop-time 60000
 
60000表示每次循环的的间隔时间,单位为ms;
若是

run cts –c android.media.cts.AudioTrackTest –m testPlayStreamData --loop
则默认是十分钟循环做一次。

2.查看结果

测试完成以后,会在下面的目录下,生成测试结果。是一个文件夹,以测试开始的日期和时间命名。

android-cts/repository/results/

打开相应的文件夹以后,例如android-cts/repository/results/2014.12.30_10.44.20,里面有testResult.xml文件,

以网页的形式打开这个文件,就可以看到结果了。我这个是测试单条case的结果。

          Show Device Information

Test Summary
CTS version 5.0_r1
Test timeout 600000 ms
Host Info ubtpc (Linux - 3.2.0-23-generic)
Plan name NA
Start time 星期二 十二月 30 10:35:33 CST 2014
End time 星期二 十二月 30 10:41:12 CST 2014
Tests Passed 1
Tests Failed 0
Tests Timed out 0
Tests Not Executed 0

Test Summary by Package

Test Package Passed Failed Timed Out Not Executed Total Tests
android.media 1 0 0 0 1

Detailed Test Report

Compatibility Test Package: android.media ABI: armeabi-v7a
Test Result Details
android.media.cts.AudioTrackTest
-- testPlayStreamData
pass
 
           

若执行某一个case的时候,在上面4步骤后弹出的终端上也可一看到是否成功的结果。

【转】android cts测试方法及步骤的更多相关文章

  1. Android CTS測试Fail项改动总结(四)

    Android5.1上的測试 1.android.security.cts.SELinuxDomainTest# testInitDomain fail 打印的log junit.framework. ...

  2. android CTS测试

    CTS认证是获得Google推出的Android系统中Android Market服务的前提 CTS兼容性测试的主要目的和意义在于使得用户在Android系统的应用过程中,有更好的用户体验,并展现出A ...

  3. Unity中加入Android项目的Build步骤

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 简介: 有的项目需要在Android中加入Unity功能,例如ANDROID应用中嵌入Un ...

  4. 监听Android CTS测试项解决方案(二)

    二,监听当前测试项是否是Accelerometer Measurement Test测试项 通过第一种方式介绍的,我们可以得到当前处于活动状态的Activity类似监听CTS测试当前的测试项.但是由于 ...

  5. 监听Android CTS测试项解决方案(一)

    前言: 首先这里需要详细叙述一下标题中"监听Android CTS测试项解决方案"的需求.这里的需求是指我们需要精确的监听到当前CTS测试正在测试的测试项. 因为我们知道CTS认证 ...

  6. 如何debug android cts

    启动和关闭ADB服务(adb start-server和adbkill-server) 经作者测试,模拟器在运行一段时间后,adb服务有可能(在Windows进程中可以找到这个服务,该服务用来为模拟器 ...

  7. Android CTS 测试总结【转】

    Android CTS 测试总结[转] 最近一直在做Android兼容性测试,根据Android官网给出的android-cts-manual 配置好了device后,开始测试. 首先配置软件环境: ...

  8. 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 ...

  9. Android CTS Test

    什么是CTS测试?了解这个问题前,我们先来搜索了解一遍“Google GMS 认证”.GMS全称为GoogleMobile Service,即谷歌移动服务.说白了GMS其实就是一系列谷歌的应用集合.谷 ...

随机推荐

  1. [转]Ubuntu Linux 安装 .7z 解压和压缩文件

    原文网址:http://blog.csdn.net/zqlovlg/article/details/8033456 安装方法: sudo apt-get install p7zip-full 解压文件 ...

  2. Javascript中&&和&,||和|运算符两个不同点

    1.性能上的比较 如果&&的第一个运算数是false,就不再考虑第二个运算数,直接返回false:如 果||的第一个运算数是true,也不再考虑第二个运算数,直接返回true.& ...

  3. hdu5080:几何+polya计数(鞍山区域赛K题)

    /* 鞍山区域赛的K题..当时比赛都没来得及看(反正看了也不会) 学了polya定理之后就赶紧跑来补这个题.. 由于几何比较烂写了又丑又长的代码,还debug了很久.. 比较感动的是竟然1Y了.. * ...

  4. sql的交叉连接,内连接,左外连接,右外连接,全外连接总结

    实践是最好的检验,一直都对这几个连接查询出来的结果有什么不同不大理解,然后自己放一块查询比较了一下,用结果来说话~ 先建两张表如下: t1: id name age 1 张三 18 2 李四 25 t ...

  5. iOS 使用pods报错问题 pod --version

    错误信息如下 find_spec_for_exe': can't find gem cocoapods (>= 0.a) (Gem::GemNotFoundException) from /Us ...

  6. C# 图结构操作

    仿造<<Java常用算法手册>>里面对的算法,使用C#实现了一遍. 理论知识我就不讲解了,在这本书里面已经写的非常完美! 代码如何下: using System; using ...

  7. 贪心-hdu-1789-Doing Homework again

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1789 题目意思: 有n个作业,每个作业有一个截止日期,每个作业如果超过截止日期完成的时候有一个惩罚值 ...

  8. C++内存分配的五种方法

    在C++中,内存分成5个区,他们分别是堆.栈.自由存储区.全局/静态存储区和常量存储区. 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区.里面的变量通常是局部变量.函数参数 ...

  9. Gunplot 命令大全

    在linux命令提示符下运行gnuplot命令启动,输入quit或q或exit退出. plot命令 gnuplot> plot sin(x) with line linetype 3 linew ...

  10. Python进阶之路---1.4python数据类型-数字

    python入门基础 声明:以后python代码未注明情况下,默认使用python3.x版本 1.python代码基础:print     print('hello,python')   1.1pyt ...