CTS v2 コマンド コンソール

CTS v2 コンソールの使用

Android 7.0 以降の場合は、CTS v2 を使用します。

プランの選択

以下のテストプランを使用できます。

  • cts - 既存の CTS インストールから CTS を実行します。
  • cts-camera - 既存の CTS インストールから CTS カメラを実行します。
  • cts-java - 既存の CTS インストールからコア Java テストを実行します。
  • cts-pdk - PDK 融合ビルドの検証に役立つテストを実行します。
  • everything - 互換性スイートの一般的な設定です。

その他の使用可能な設定は次のとおりです。

  • basic-reporters - 基本的な CTS レポーターを使用した設定です。
  • collect-tests-only - 既存の CTS インストールから CTS を実行します。
  • common-compatibility-config - 互換性スイートの一般的な設定です。
  • cts-filtered-sample - 互換性スイートの一般的な設定です。
  • cts-known-failures - CTS の既知の失敗を使用した設定です。
  • cts-preconditions - CTS 前提条件の設定です。
  • host - 既存のデバイスに対して 1 つのホストベースのテストを実行します。
  • instrument - 既存のデバイスで 1 つの Android インストルメンテーション テストを実行します。
  • native-benchmark - 既存のデバイスでネイティブ ストレステストを実行します。
  • native-stress - 既存のデバイスでネイティブ ストレステストを実行します。
  • recharge - ほぼ完全に放電されるまで待ってから、充電するまで待つ、擬似的なテストです。
  • testdef - test_def.xml ファイルに含まれるテストを既存のデバイスで実行します。
  • util/wifi - デバイスの Wi-Fi を設定するためのユーティリティ設定です。
  • util/wipe - デバイスのユーザーデータをワイプします。

これらのプランと設定はすべて、run cts コマンドで実行します。

CTS v2 コンソール コマンド リファレンス

次の表は、さまざまな用途の CTS v2 コンソール コマンドをまとめたものです。

ホスト 説明
help よく使用されるコマンドの概要を表示します。
help all 使用可能なコマンドの完全な一覧を表示します。
version バージョンを表示します。
exit CTS コンソールを正常に終了します。現在実行中のテストがすべて終了すると、コンソールが終了します。
extdir

圧縮されたダウンロード ファイルを extdir に解凍します。インフレートされた出力を削除するには、-q オプションを使用します。

unzip -q android-cts-9.0_r15-linux_x86-arm.zip -d extdir

現在のディレクトリに解凍する場合は、-d オプションを使用せずに、次のコマンドを実行します。

unzip -q android-cts-9.0_r15-linux_x86-arm.zip

実行 説明
run cts

Android 10 の場合は、デフォルトの CTS プランと CTS-Instant を一緒に実行します。つまり、CTS 全部を実行します。Android 9 以前の場合は、デフォルトの CTS プランのみを実行します。デバイス検証には、この包括的なオプション(前提条件を含む)を使用します。 内容については cts.xml をご覧ください。

CTS コンソールは、テストの進行中に他のコマンドを受け付けます。

デバイスが接続されていない場合、CTS デスクトップ マシン(ホスト)は、デバイスが接続されるのを待ってから、テストを開始します。複数のデバイスが接続されている場合、CTS ホストは自動的に 1 台のデバイスを選択します。

run cts-instant

Android 9 の場合は、デフォルトの CTS-Instant プランを実行します。

run cts --module-parameter INSTANT_APP

Android 10 の場合は、デフォルトの CTS-Instant プランを実行します。

run cts --module-parameter INSTANT_APP --module/-m test_module_name

Android 10 の場合は、指定した CTS-Instant テスト モジュール(複数可)を実行します。

run retry

Android 9 以降の場合のみ。以前のセッションで失敗した、または実行されなかったすべてのテストを再試行します。たとえば、TF 分割を使った run retry --retry -s または run retry --retry --shard-count です。

Android 9 以降の場合、run cts --retry は使用できません。

run cts-sim

Android 11 以降の場合。SIM カードが入ったデバイスでテストのサブセットを実行します。

--device-token

Android 8.1 以前の場合。デバイスにトークンを指定します。たとえば、--device-token 1a2b3c4d:sim-card です。

--enable-token-sharding

Android 10 以降の場合のみ。各 SIM タイプを必要とするテストと自動的にマッチングします。SIM 関連のテストケースを実行するためにデバイスのシリアル番号を指定する必要はありません。サポートされている SIM は、SIM_CARDUICC_SIM_CARDSECURE_ELEMENT_SIM_CARD です。

run cts-dev

デフォルトの CTS プラン(すなわち CTS 全部)を実行しますが、前提条件をスキップして、新しいテストの反復開発の実行時間を短縮します。これにより、--skip-preconditions オプションが使用された場合と同じように、メディア ファイルの転送や Wi-Fi 接続の確認など、デバイスの設定の確認とセットアップが省略されます。また、このコマンドを使用すると、デバイス情報の収集とすべてのシステム状態チェッカーもスキップされます。また、1 つの ABI のみでテストを実行します。デバイスの検証では、この最適化を行わず、すべての前提条件とチェックを含むようにしてください。除外するものについては、cts-dev.xml をご覧ください。

CTS コンソールは、テストの進行中に他のコマンドを受け付けます。

デバイスが接続されていない場合、CTS デスクトップ マシン(ホスト)は、デバイスが接続されるのを待ってから、テストを開始します。複数のデバイスが接続されている場合、CTS ホストは自動的に 1 台のデバイスを選択します。

--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 に表示するログレベルを指定の最低レベルで実行します。VERBOSEDEBUGINFOWARNERRORASSERT を指定できます。
--abi abi_name 指定した ABI(32 または 64)でテストを実行します。デフォルトでは、CTS はデバイスがサポートする ABI ごとにテストを 1 回実行します。
--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 デバイスで現在実行中の「run」コマンドの一覧を表示します。
list commands 現在キュー内にあって、デバイスに割り当てられるのを待っている「run」コマンドをすべて表示します。
list results 現在リポジトリに保存されている CTS の結果を一覧表示します。
list devices 現在接続中のデバイスとその状態を一覧表示します。

「Available」と表示されたデバイスは、機能していて、テストを実行できるアイドル状態のデバイスです。

「Unavailable」と表示されたデバイスは、adb 経由で存在を確認できるデバイスですが、adb コマンドに応答せず、テストには割り当てられません。

「Allocated」と表示されたデバイスは、現在テストを実行しているデバイスです。

ダンプ 説明
dump logs 実行中のすべての呼び出しの tradefed ログをダンプします。
追加 説明
add subplan --name/-n subplan_name
--result-type
[pass | fail | timeout | notExecuted]
[--session session_id]
以前のセッションから派生したサブプランを作成します。このオプションを使用すると、テストのサブセットを実行するために使用できるサブプランが生成されます。

必須オプションは --session だけです。他の値は省略可能ですが、指定する場合はその後ろに値も指定する必要があります。--result-type オプションは何度も指定できます。たとえば、add subplan --session 0 --result-type passed --result-type failed は有効です。