【转】兼容性测试套件(CTS)框架用户手册

原文网址:http://blog.sina.com.cn/s/blog_416166e90102v6bi.html

兼容性测试套件(CTS)框架用户手册

1、为什么需要兼容性测试(以下称CTS)?

2、怎么样才能让我的设备变成兼容的。

2.1、与Android Compatibility Definition文档(以下简称ACD)匹配

2.2、通过CTS测试

2.3、提交报告

3、CTS的工作原理

3.1、工作流程

3.2、测试案例类型

3.3、目前的测试覆盖面

4、设置和使用CTS

4.1、配置CTS

4.2、设置您的设备

4.3、使用CTS

4.4、选择CTS计划

5、 解释一下测试结果

6、发行说明

6.1、一般

6.2、已知问题

7、附录:CTS控制台命令参考

 

1、为什么需要兼容性测试(以下称CTS)?

1、让APP提供更好的用户体验。用户可以选择更多的适合自己设备的APP。让APP更稳定。

2、让开发者设计更高质量的APP。

3、通过CTS的设备可以运行Android market。

另外,CTS是免费的,而且很简单。

2、怎么样才能让我的设备变成兼容的?

2.1、与Android Compatibility Definition文档(以下简称ACD)匹配

先看一下与你的系统版本相匹配的ACD,文档中描述了你需要具备的软件和硬件参数。

2.2、通过CTS测试

CTS是开源的测试框架,使用它来测试你的设备是否具备兼容性。

2.3、提交报告

你可以把测试结果发送给[email protected]。当你提交了一个CTS报告时,你还可以要求访问Android Market.我们正在准备专门用途测试和认证的网站和相应服务,好了之后会通知大家的。

3、CTS的工作原理

CTS主要包含两个组件:

运行在PC上的测试框架组件。主要用来管理测试用例(test case)的执行。

运行在设备或模拟器上的测试用例。这些用例用JAVA写成的APK文件。

3.1、工作流程

1、可以从源码编译CTS,也可以从网站下载编译好的CTS

2、安装配置CTS。

3、把设备连接到PC上。

4、运行CTS。CTS会把相应的测试用例(也就是一个APK文件)传送到设备上并通过instrumentation运行,然后记录运行结果,最后删除测试用例。

所有的测试用例执行完毕后,可以参照测试结果重新调整或优化系统。然后继续运行CTS测试。

5、测试通过以后,你可以把CTS生成的结果(就是result下面那个以测试时间命名的.zip文件)提交给[email protected]。


3.2、测试案例类型

CTS包含下面三种级别:

1、单元级。测试Android平台上的代码单元。比如,一个java.util.HashMap这样的类。

2、功能级。多个API组合而成的一个更高级的功能。

3、程序级。通过运行一个简单的APP来执行一个API集合和Android运行时服务。

未来版本还会包含下面的类型:

1、强度测试。测试系统在高CPU运算之下的稳定性。

2、效率测试。比如每秒渲染的帧数。

3.3、目前的测试覆盖面

目前,为了确保兼容,测试用例覆盖了下面的这些范围

1、Signature

对每个Android产品,都有一些XML文件来描述所有的公开API。CTS包含了一个工具来检测这些API签名中包含的API是否都在系统中被支持。

2、Platform

测试SDK文档中描述的平台API,比如core libraries,Android Application Framework等。要求这些API可以提供:

正确的类、属性、方法签名、方法行为、错误参数处理方式

3、Dalvik VM

专门针对Dalvik Vm的测试。

4、Platform Data Model

平台通过ContentProvider提供给开发者使用的数据,比如:Contacts,Browser,Settings等。

5、Platform Intents

平台提供的用于核心功能的Intent。

6、Platform permission

平台提供的一些重要APP权限

7、Platform Resources

simple values,drawables,nine-patch,animations,layouts,styles and themes,loading alternate resources等

4、设置和使用CTS

4.1、配置CTS

注:配置和运行CTS步骤在4.0版本中有更改。

要运行CTS,请确保你的机器上安装有adb的最新副本。

要安装ADB,下载并安装Android SDK工具。然后添加SDK平台工具组件。

确保“adb”是在你的系统路径。

例如:

export PATH=$ PATH:/ home/myuser/android-sdk-linux_x86/platform-tools

4.2、设置您的设备

CTS只能在用户设备(consumer devices)上执行。

下面的这些说明很重要,配置不当的话可能导致测试超时或测试失败:

1、你要测试的设备应运行一个user build(Android 4.0及更高版本)从source.android.com

2、请参阅http://developer.android.com/tools/device.html来设置您的设备。

3、在你运行CTS前,请确保你的设备已经烧入了一个user build (Android 4.0及更高版本)。

4、在运行CTS测试之前还需要通过Settings->Speech Synthesis->Install voice data来下载TTS(Text  to Speech)文件。如果没有安装Android Market的话,需要手动安装。

5、确保设备有一个SD卡插入且卡是空的。因为CTS可能修改/删除SD卡上的数据。

6、在设备上做一次恢复出厂设置(Settings->SD Card & phone Storage->Factory data reset)。注意:这会删除设备上的所有用户数据。

7、确保设备没有处在任何lock pattern之下(取消Settings->Security&location->Require Pattern这个选项)

8、确保“USB调试”选项被选中(Settings > Developer options > USB debugging)。

9、请确保” Stay Awake” 被选中(Settings > Developer options > Stay Awake )

10、确保Settings > Developer options > Allow mock locations被设置为true

11、确保设备连接到一个正常运作的Wi-Fi网络(设置>WIFI网络)

12、。确保设备在CTS开始的时候显示主屏幕(按HOME按钮)。

13、 当一个设备在进行测试,绝不能执行其它任务。

14、 CTS运行时,不要按任何键,在测试设备上按键或触摸屏幕会干扰测试运行,并可导致测试失败。

15、设置易访问性测试:

1、Adb  install  android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk

2、在设备上,启用Settings > Accessibility > Delegating Accessibility Service

16、设置设备管理测试:

1、 Adb  install android-cts/repository/testcases/CtsDeviceAdmin.apk

2、在设备上,启用Settings > Security > Device Administrators >

android.deviceadmin.cts.CtsDeviceAdmin* settings

17、根据下面的说明,使用ADB拷贝CTS媒体文件到您的设备中:

4.3、使用CTS

运行一个test plan需要:

1、确保你至少有一个设备连接到PC上。启动CTS控制台通过运行CTS tradefed脚本,例如

$  ./ Android-cts/tools/ CTS-tradefed

2、你可以通过执行start –plan CTS来执行默认的test plan。这个test plan包含所有的测试用例。

键入list plans来查看repository的测试计划(test plans)列表,键入list packages来查看repository的测试包(test packages)列表。

通过CTS命令参考或键入help来查看支持命令的完整列表。

3、或者,您可以在命令行中执行CTSplan使用用CTS  tradefed  run  cts  --plan

4、您应该检验控制台上报告的进展和成果。

4.4、选择CTS计划

当前CTS版本中,一共包含下面7个test plan。

1、CTS

包含所有的测试用例,大约会在设备上执行17000个测试。不包含性能测试。

2、Signature

包含对所有公开API的签名认证。

3、Android

包含对Android平台API的测试。

4、Java

包含对Java核心库API的测试。

5、VM

包含对Dalvik Vm的测试。

6、RefApp

包含对相关应用程序的测试

7、Performance

包含对系统性能的测试。

这些可以通过之前提到的run  CTS命令执行。


5、 解释一下测试结果

测试结果被放在:$CTS_ROOT/repository/results/.zip

在这个ZIP文件中,testResult.xml文件包含了真正的测试结果,用浏览器打开这个文件可以看到下面这样的效果。

其中,“device information”部分提供了设备和固件的细节(如make,model,firmware build,platform等)和设备的硬件配置(屏幕参数、键盘、屏幕类型等)。

另外,“test summary”部分提供了test plan的执行细节描述,包含CTS plan name和执行的开始、结束时间。还有测试结果的统计,包含测试通过、失败、超时、不能执行的个数。

下面的这个表格统计了一个包中的测试用例有多少测试通过。

这个表格的后面还跟着对执行结果更具体的描述。

这个报告列出了test package,test suite,test case和执行的测试,还有测试执行的结果:通过、失败、超时、未执行。当测试失败时,可以在XML文件中找到stack trace,为了让执行结果更简洁,这些stack trace没有被包含进来。用文本编辑器查看XML文件,在里面搜索一下标签和标签就可以了。

6、发行说明

6.1、一般

●注意:在Android4.0版本的CTS测试已经有很大的改变。

已加入了一些新的特点包括分割CTS测试使其运行在多个并行设备上,以及更快的性能。

●本CTS版本包含约17,000测试。

●在你开始CTS测试,请确保按照4.2“Setting up your device”来设置。不遵守这些指示可能导致测试超时或失败。

6.2、已知问题

7、附录:CTS控制台命令参考

时间: 2024-11-08 17:03:57

【转】兼容性测试套件(CTS)框架用户手册的相关文章

安卓CTS官方文档之兼容性测试套件简介

官方英文文档原文:https://source.android.com/compatibility/cts-intro.html Compatibility Test Suite 兼容性测试套件 How does the CTS work? CTS是如何工作的? Figure 1. How to use CTS 图1. CTS使用流程 The CTS is an automated testing harness that includes two major software componen

简析Android 兼容性测试框架CTS使用

一.什么是兼容性测试? 1)为用户提供最好的用户体验,让更多高质量的APP可以顺利的运行在此平台上 2)让程序员能为此平台写更多的高质量的应用程序 3)可以更好的利用Android应用市场 二.CTS覆盖领域 1)签名测试:针对每个Android正式版,都将附带一系列XML文档对所有的公共API签名进行描述.CTS将检查这些签名是否适用于该设备,并保存其结果. 2)平台API测试:测试SDK中平台核心库和Android应用程序框架的API是否正确 3)Dalvik虚拟机测试:集中测试Dalvik

Android兼容性测试框架(CTS)手册

了解老码农个人隐私,请看这里:http://www.koulianbing.com/?page_id=12 本文翻译自Android官方的CTS手册android-cts-manual-r4.pdf Android兼容性测试框架手册 1.为什么需要兼容性测试(以下称CTS)? 1.1.让APP提供更好的用户体验.用户可以选择更多的适合自己设备的APP.让APP更稳定. 1.2.让开发者设计更高质量的APP. 1.3.通过CTS的设备可以运行Androidmarket. 另外,CTS是免费的,而且

【转】android 兼容性测试 CTS 测试过程(实践测试验证通过)

原文网址:http://blog.csdn.net/jianguo_liao19840726/article/details/7222814 写这个博客的时候是为了记忆,建议大家还是看官方的说明,官方说的很清楚,不想把官方大段大段的拷贝到这里,官方的的确说的很清楚: http://source.android.com/compatibility/overview.html  左边的相关的几个链接   中文说明:具体的也可以见http://source.android.com/compatibil

Android CTS(兼容性测试)整个流程

为了保证开发的应用在所有兼容Android的设备上正常运行,并保证一致的用户体验,Google制定了CTS(Compatibility Test Suite)来确保设备运行的Android系统全面兼容Android规范,Google也提供了一份兼容性标准文档(Compatibility Definition Document, CDD). 在进行CTS之前,需要先从google官网下载相关文件,需要自卑梯子翻墙.下载链接: http://source.android.com/compatibil

Android兼容性测试CTS Verifier-环境搭建、测试执行、结果分析

    CTS Verifier算是CTS的一部分,需要手动进行,主要用于测试那些自动测试系统无法测试的功能,比如相机.传感器等.由于硬件配置或其他原因,不同手机上部分测试项目被隐藏,也就是说CTS Verifier中case的总数,取决于测试机支持哪些功能,    CTS Verifier总共包含以下15个功能: · Camera · Clock · Device administration · Features · Hardware · Job scheduler · Location ·

【转】Android兼容性测试CTS Verifier-环境搭建、测试执行、结果分析

原文网址:http://www.cnblogs.com/zh-ya-jing/p/4452675.html CTS Verifier算是CTS的一部分,需要手动进行,主要用于测试那些自动测试系统无法测试的功能,比如相机.传感器等.由于硬件配置或其他原因,不同手机上部分测试项目被隐藏,也就是说CTS Verifier中case的总数,取决于测试机支持哪些功能, CTS Verifier总共包含以下15个功能: · Camera · Clock · Device administration · F

【转】Android兼容性测试CTS --环境搭建、测试执行、结果分析

原文网址:http://www.cnblogs.com/zh-ya-jing/p/4396918.html 为了确保Android应用能够在所有兼容Android的设备上正确运行,并且保持相似的用户体验,在每个版本发布之时,Android提供了一套兼容性测试用例集合(Compatibility Test Suite, CTS)来认证运行Android系统的设备是否完全兼容Android规范,并附带有相关的兼容性标准文档(Compatibility Definition Document, CDD

unittest单元测试框架之测试套件(三)

1.测试套件(注意:测试用例先添加先执行,后添加后执行,由此组织与设定测试用例的执行顺序) addTests:添加多个测试用例 addTest:添加单个测试用例 import unittest from UnittestDemo.test_mathfunc import TestMathFunc if __name__ == "__main__": suite = unittest.TestSuite() # 执行加法.减法.除法 tests =[TestMathFunc("