一、为什么须要兼容性測试(下面称CTS)?

1.1、让APP提供更好的用户体验。用户能够选择很多其它的适合自己设备的APP。让APP更稳定。

1.2、让开发人员设计更高质量的APP。

1.3、通过CTS的设备能够执行Android market。

另外,CTS是免费的,并且非常easy。

二.CTS是开源的測试框架,使用它来測试你的设备是否具备兼容性。CTS主要包括两个组件:

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

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

三、工作流程

1、能够从源代码编译CTS,也能够从站点下载编译好的CTS

2、安装配置CTS。

3、把设备连接到PC上。

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

全部的測试用例执行完成后,能够參照測试结果又一次调整或优化系统。然后继续执行CTS測试。

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

四、眼下的測试覆盖面

眼下,为了确保兼容,測试用例覆盖了以下的这些范围

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等

五、CTS搭建(Unbutu/Linux平台)

1.下载CTS包http://source.android.com/compatibility/downloads.html

2.在手机或者模拟器上安装CtsDelegatingAccessibilityService.apk非必需

(1)$sudo ./adb install -r /home/tester/cts/android-cts/repository/testcases

/CtsDelegatingAccessibil

ityService.apk

(2)手机或模拟器设置Settings > Accessibility > Accessibility > Delegating Accessibility Service

3.进入android/out/host/linux-x86/cts /android-cts/repository/tools文件夹下,改动startcts脚本文件。将脚本中的SDK_ROOT该成自己的android SDK路径.

$cdhome/tester /cts/android-cts/repository/tools $vim startcts改动脚本中出现的第一个SDK_ROOT,如"SDK_ROOT=/home/tester/cts/android-sdk-linux_86"。

4.运行startcts脚本。在运行CTS測试计划时(运行一段时间后,大于5分钟)会出现没有足够权限启动devices,使用$sudo ./startcts可解决该问题。

(Windows下配置好sdk和android开发环境后,能够直接通过java命令来运行cts測试:java -Xmx512M -cp D:\android-cts\tools\cts.jar;D:\android-cts\tools\hosttestlib.jar;D:\android-cts\tools\junit.jar;C:\Android\android-sdk\tools\lib\ddmlib.jar com.android.cts.TestHost D:\android-cts\repository\host_config.xml

假设使用的是android-cts-2.2_r4-x86.zip,-cp选项中须要多一个D:\android-cts\tools\lib\CtsTestAnnotationsHostLib.jar,可參考startcts脚本。)

5.出现例如以下提示符表示启动cts并连接设备成功。(红色部分未deviceID,视设备号而定)

Android CTS version 2.3_r4

Device(emulator-5544) connected

cts_host > cts_host >

6.在“cts_host >”提示符下输入命令,下面为几个经常使用的命令

help查看全部

exit退出

ls -p列出全部的測试包

ls --plan列出全部的測试方案

start --plan plan_name执行一个測试方案,如:start --plan CTS

start --plan plan_name --package package_name执行一个特定的測试包,如:start --plan CTS --package android.bluetooth


六、查看測试报告

执行測试时,在CTS执行界面能看到測试报告与执行状况。測试完毕后可在android-cts/repository/results/下生成具体的測试报告和一些附加信息,当中用日期和时间命名的目录下为全部的測试结果,同一时候目录也会被打成一个相应的.zip包方便提交。用浏览器打开.xml文件(默认就是,直接双击)就能够查看所用的測试报告了。

七:网址

http://hi.baidu.com/jugege/blog/item/dcb6edf3f88e8d43352accb0.html

更多相关文章

  1. Android(安卓)App压力测试(Monkey和ADB)
  2. Android和用户交互的媒介Activity-生命周期方法
  3. 【Android(安卓)Training - 09】高效地显示Bitmap图片 [ Lesson
  4. Android使用SQLITE3 WAL模式
  5. Android之判断设备网络连接状态,并判断连接方式
  6. 获取Android设备唯一标识码以及其他信息
  7. Android(安卓)Q Beta 6 终极测试版发布!
  8. NFC钥匙扣对于iPhone和Android设备从中国RFID
  9. ANR错误之 keyDispatchingTimedOut

随机推荐

  1. Android中属性动画和补间动画的区别
  2. build android for VMware
  3. android 使用 ffmpeg 进行视频转码(二)
  4. Android(安卓)怎么样使用shape
  5. Android的http网络请求和发送
  6. Android(安卓)HAL 介绍
  7. android定制系统实现app自启
  8. Android(安卓)热修复使用Gradle Plugin1.
  9. 在Android中查看和管理sqlite数据库
  10. IKNinePhotoView 是一个开源的 Android(