使用 CTS v2 控制台
对于 Android 7.0 或更高版本,请使用 CTS v2。
选择计划
您可以选择以下测试计划:
- cts - 从预装的 CTS 套件运行 CTS。
 - cts-camera - 从预装的 CTS 套件运行 CTS-camera。
 - cts-java - 从预装的 CTS 套件运行核心 Java 测试。
 - cts-pdk - 运行有助于验证 PDK 融合 build 的测试。
 - everything - 兼容性套件的通用配置。
 
其他可用配置如下:
- basic-reporters - 基本 CTS 报告程序的配置。
 - collect-tests-only - 从预装的 CTS 套件运行 CTS。
 - common-compatibility-config - 兼容性套件的通用配置。
 - cts-filtered-sample - 兼容性套件的通用配置。
 - cts-known-failures - CTS 已知故障的配置。
 - cts-preconditions - CTS 前提条件配置。
 - host - 在现有设备上运行单个基于主机的测试。
 - instrument - 在现有设备上运行单个 Android 插桩测试。
 - native-benchmark - 在现有设备上运行原生压力测试。
 - native-stress - 在现有设备上运行原生压力测试。
 - recharge - 等待设备的电量接近耗尽状态,然后让设备保持充电状态的虚设测试。
 - testdeftestdef - 在现有设备上运行包含在 test_def.xml 文件中的测试。
 - util/wifi - 用于在设备上配置 Wi-Fi 的实用程序配置。
 - util/wipe - 擦除设备上的用户数据。
 
所有这些计划和配置都可以使用 run cts 命令执行。
CTS v2 控制台命令参考
下表总结了用于各种用途的 CTS V2 控制台命令。
| 主机 | 说明 | 
|---|---|
help | 
        显示最常用命令的摘要 | 
help all | 
        显示可用命令的完整列表 | 
version | 
        显示版本。 | 
exit | 
        正常退出 CTS 控制台。当前运行的所有测试完成后,控制台将关闭。 | 
extdir | 
        压缩后的下载文件会解压缩到  
 如果您想要解压缩到当前目录,请不要使用  
  | 
      
| 运行 | 说明 | 
run cts | 
        在 Android 10 中,一起运行默认的 CTS 计划和适用于免安装应用的 CTS 计划(即完整的 CTS 调用)。对于 Android 9 或更低版本,则仅运行默认的 CTS 计划。此综合性选项(包含前提条件)可用于进行设备验证。 有关要包含的内容,请参阅 cts.xml。 在测试过程中,CTS 控制台可以接受其他命令。 如果没有连接任何设备,CTS 台式机(或主机)会等到设备连接后再启动测试。如果连接了多台设备,则 CTS 主机将自动选择一台设备。  | 
run cts-instant | 
        对于 Android 9,运行默认的适用于免安装应用的 CTS 计划。  | 
run cts --module-parameter INSTANT_APP | 
        在 Android 10 中,运行默认的适用于免安装应用的 CTS 计划。  | 
run cts --module-parameter INSTANT_APP --module/-m test_module_name | 
        在 Android 10 中,运行一个或多个指定的适用于免安装应用的 CTS 测试模块。  | 
      
run retry | 
        仅适用于 Android 9 或更高版本。重新尝试运行在以前的会话中失败或未执行的所有测试。例如, Android 9 或更高版本不允许运行   | 
        
run cts-sim | 
        适用于 Android 11 或更高版本。在装有 SIM 卡的设备上运行部分测试。  | 
      
--device-token | 
        适用于 Android 8.1 或更低版本。指定具有给定令牌的给定设备,例如,  | 
      
--enable-token-sharding | 
        仅适用于 Android 10 或更高版本。自动匹配需要相应 SIM 卡类型的测试。无需提供设备序列号即可执行 SIM 卡相关测试用例。支持的 SIM 卡:  | 
run cts-dev | 
        运行默认的 CTS 计划(即完整的 CTS 调用),但跳过前提条件以缩减运行时间,从而对新测试执行迭代开发。这会绕过对设备配置的验证和设置(例如推送媒体文件或检查 Wi-Fi 连接),就如同使用了  在测试过程中,CTS 控制台可以接受其他命令。 如果没有连接任何设备,CTS 台式机(或主机)会等到设备连接后再启动测试。如果连接了多台设备,则 CTS 主机将自动选择一台设备。  | 
      
--subplan  subplan_name | 
        运行指定的子计划。 | 
--module/-m test_module_name --test/-t test_name  | 
        运行指定的模块和测试。例如,run cts -m Gesture --test android.gesture.cts.GestureTest#testGetStrokes 会运行特定的软件包、类或测试。
           | 
    
--retry | 
        重新尝试运行在以前的会话中失败或未执行的所有测试。
            使用 list results 获取会话 ID。 | 
      
--retry-type NOT_EXECUTED | 
        仅重新尝试运行在以前的会话中未执行的测试。
            使用 list results 获取会话 ID。 | 
      
--shards number_of_shards | 
        对于 Android 8.1 或更低版本。将 CTS 运行分为指定数量的独立块,以便在多台设备上并行运行。 | 
--shard-count number_of_shards | 
        对于 Android 9:将 CTS 运行分为指定数量的独立块,以便在多台设备上并行运行。 | 
--serial/-s deviceID | 
        在特定设备上运行 CTS。 | 
--include-filter "test_module_name test_name" | 
        使用指定的模块或测试软件包、类和案例运行。例如,run cts --include-filter
            "CtsCalendarcommon2TestCases android.calendarcommon2.cts.Calendarcommon2Test#testStaticLinking" 会包含指定的模块。
          重新运行测试时不支持此命令选项。  | 
      
--exclude-filter "test_module_name test_name" | 
         从运行中排除指定的模块或测试包、类和案例。例如,run cts --exclude-filter "CtsCalendarcommon2Test
            android.calendarcommon2.cts.Calendarcommon2Test#testStaticLinking" 会排除指定的模块。
     | 
      
--log-level-display/-l log_level | 
        以显示给 STDOUT 的最小指定日志级别运行。有效值:[VERBOSE、DEBUG、INFO、WARN、ERROR、ASSERT]。 | 
      
--abi abi_name | 
        强制要求测试在给定的 ABI(32 或 64)上运行。默认情况下,CTS 会为设备支持的每个 ABI 运行一次测试。 | 
--logcat-on-failure,--bugreport-on-failure,--screenshoot-on-failure | 
        显示更详尽的故障信息并帮助进行诊断。 | 
--device-token | 
        指定具有给定令牌的给定设备,例如 --device-token 1a2b3c4d:sim-card。 | 
      
--skip-device-info | 
        跳过收集设备相关信息的步骤。 | 
--skip-preconditions | 
        跳过前提条件以缩减运行时间,从而对新测试执行迭代开发。这会绕过验证和设置设备配置(例如推送媒体文件或检查 Wi-Fi 连接)。 | 
| 列表 | 说明 | 
list modules | 
        列出存储区中的所有可用测试模块。 | 
list plans 或 list configs | 
        列出存储区中的所有可用测试计划(配置)。 | 
list subplans | 
        列出存储区中的所有可用子计划。 | 
list invocations | 
        列出设备上当前正在执行的“运行”命令。 | 
list commands | 
        列出当前在队列中等待分配给设备的所有“运行”命令。 | 
list results | 
        列出当前存储在存储区中的 CTS 结果。 | 
list devices | 
        列出当前连接的设备及其状态。
           
 “可用”设备是可正常运行的空闲设备,可用于运行测试。 
 “不可用”设备是指可通过 adb 查看,但不响应 adb 命令的设备,系统不会分配这些设备以用于测试。 
 “已分配”设备是当前正在运行测试的设备。  | 
      
| 转储 | 说明 | 
dump logs | 
        为所有正在运行的调用转储 tradefed 日志。 | 
| 添加 | 说明 | 
add subplan --name/-n subplan_name | 
        创建从上一会话衍生的子计划;此选项会生成可用于运行测试子集的子计划。 唯一的必选项是 --session。其他选项都是可选的,但如果选用这些选项,必须后跟一个值。--result-type 选项可重复使用;例如 add subplan --session 0 --result-type passed --result-type
          failed 是有效的。 |