关于android 的CTS认证
CTS认证是获得Google推出的Android系统中Android Market服务的前提。本次摩尔实验室所提供的CTS检测服务,将简化您的申请流程,帮助您更快的获得Android Market的使用许可。
CTS兼容性测试的主要目的和意义在于使得用户在Android系统的应用过程中,有更好的用户体验,并展现出Android系统的优越特性;使得Android应用程序编写者更容易编写高质量的应用程序;充分展现Android Market的优势,让获得CTS认证的终端得到Android Market的使用许可。
CTS认证是免费
如果你正在建设一个移动设备,您可以按照下列步骤操作,以确保您的设备与Android兼容。对于一般的Android兼容性计划的更多细节(认证的官方网站有下载的)
过程分为三个步骤:
1. 获取Android软件的源代码。这是为Android平台的源代码,你的硬件端口。
2. 符合Android的兼容性定义文件(CDD)。CDD列举兼容的Android设备的软件和硬
件要求。
3. 通过兼容性测试套件(CTS)的。作为一个持续的援助,在开发过程中的兼容性,您可
以使用CTS(包含在Android源代码)。
CTS认证的基本教程
1. 2. 下载及安装(gif为版本控制,多用于linux。有windows版本,可以去网上找。)gif下载android-2.1系统并编译。
git下载的源码里包含cts,位置在$ANDROID/cts目录下(android2.1以后版本)
如果没有也可以从此处下载git://https://www.sodocs.net/doc/511704337.html,/platform/cts.git(源码70M左右)
编译
$ build/envsetup.sh
$ make cts
此时生成测试计划,测试包,测试用例,和测试报告生成的目录
3. 使用方法
a) 方法1:一般使用的方法
$ cts 注意如果用手机设备调试,用root权限执行
cts_host > ls --plan 列出所有plan
out/host/linux-x86/cts/android-cts/repository/plans中有plan的具体内容
cts_host > start --plan VM 运行某个plan
测试结果在out/host/linux-x86/cts/android-cts/repository/results目录下,用浏览器看时间目
录下的xml文件即可
注意在改动cts后,还要make cts重新编译,若只在cts目录中编译不能生效
cts_host > ls -p 看当前可用的用例包
cts_host > start --plan Android -p android.app 只运行某个用例包,节约时间
cts_host > start --plan Android -p android.app -t android.app.cts.AlertDialogTest#testAlertDialog 只运行某个用例包中的某个用例
b) 方法2:遇到问题时方便调试的方法
$ adb install out/target/product/xxxx/data/app/SginatureTest.apk 安装某个用例包
$ adb shell pm list instrumentation pm用于管理package,看当前机器安装了什么用例
$ adb shell am instrument -w android.tests.sigtest/.InstrumentationRunner am用于管理activity 运行某一用例
$ adb shell am instrument -e class android.app.cts.AlertDialogTest#testAlertDialog -w com.android.cts.app/android.test/InstrumentationCtsTestRunner 单独运行一个小case
如果在一个时间很长的plan(如Android)中,某处错了,而错误信息又不全,需要单独跑一个小case,用-e指明class明就可以节约很多时间
4. 说明
a) bin/cts是一个脚本,它使用adb来测试,测试程序及测试用例由java语言编写
b) cts主函数为cts/tools/host/src/com/android/cts/TestHost.java
CTS 是兼容性测试, Google为了防止厂商对Android的改动影响其SDK API的兼容性, 即第三方应用程序安装到该厂商的机器上都能正常运行。
这个差不多是自动跑的,会测试硬件(比如GPS,WIFI),还有其他一系列的东西,整体跑下来差不多2-3天,跑完之后会出一份详细的报告,告诉你哪些地方没通过。
一般个人搞这个的比较少,出手机的或者运营商定制手机的这个都要搞。
手机生产厂商自己做CTS,只需要最后提交结果给Google就行了。 CTS测试时间点自己定,一般到后期手机比较稳定了后才做,在最后几个版本上测试的比较频繁。当然,你最后提交给Google的结果必须是要在上市的最后版本上测的。
Android Compatibility官方网站:
https://www.sodocs.net/doc/511704337.html,/compatibility/index.html