为保证开发的应用在所有兼容Android的设备上正常运行,并保证一致的用户体验,Google制定了CTS(Compatibility Test Suite)来确保设备运行的Android系统全面兼容Android规范,Google也提供了一份兼容性标准文档(Compatibility Definition Document, CDD)。 进行CTS之前,需要先从google官网下载相关文件,需要。下载链接: http://source.android.com/compatibility/downloads.html。 cts测试一般都是在Linux下进行,通过"run cts ..."来跑cts测试的,对于某条case Failed 就需要修改代码去重新跑下失败的case,直到通过为止。这篇文章主要说下,怎么通过"adb shell am"命令来跑一些cts测试项,一般在跑cts之前需要装一些apk,有的apk可能没有启动入口,这时就需要以命令的方式去跑一些测试

1、通过下面的命令过滤所有支持测试的包

adb shell pm list instrumentation

跑cts测试可以利用adb shell am 命令
 adb shell am instrument [-r] [-e  ] [-p ] [-w]               [—user  | current]               [—no-window-animation] [—abi ] 
下面就来看看跑这个包和单条case的命令

2、测试整个包里的case

adb shell am instrument  -w -r android.net.cts/android.support.test.runner.AndroidJUnitRunner
需要注意的是"-r"后指定就是通过"adb shell pm list instrumentation"里列举出来的

3、cts测试单个方法

adb shell am instrument -e class android.net.cts.ConnectivityManagerTest#testConnectivityChanged_manifestRequestOnly_shouldNotReceiveIntent -w -r android.net.cts/android.support.test.runner.AndroidJUnitRunner
通过"-e"指定某类里具体的方法 ,"-w"指定当前用户, "-r"指定跑那个包里的测试case,一般cts failed项里能看到是那个方法跑失败了,知道了怎么复现问题,至于怎么解决应该就不是难事了吧,具体看看那个方法里干啥了,对应改改相应代码应该就没啥问题了,这里主要介绍了一种通过adb 命令方式跑cts里的一些包。

更多相关文章

  1. android命令行操作
  2. 2种自定义android标题栏titleBar的方法
  3. Android Environment 的作用以及常用的方法
  4. Android Studio 中方法数65536 或超过64K的解决方案
  5. Android SDK使用迅雷下载方法
  6. Android应用程序启动时发生AndroidRuntime : ClassNotFoundExcep
  7. Android SDK 中常用命令行工具
  8. Android的Activity的launchMode与onActivityResult方法的关系

随机推荐

  1. VS2015常用快捷键详解
  2. wcf什么意思?关于wcf的实例教程
  3. Visual Studio 中自定义生成事件的详细介
  4. 值类型对象的两种表示形式
  5. net 使用 data.oracleclient 出现的错误
  6. 经典的IoC/DI容器--StructureMap
  7. 最新版近乎v5.0新型社区发布介绍
  8. 什么是构造器?引用类型是什么?
  9. 用Shape做动画的实例详解
  10. ASP.NET MVC 遇到JSON循环调用的问题应该