Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る

Global Config を使用したプロトコルの読み込み

このセクションを理解するには、まず Tradefed@Option をご覧ください。

Tradefed の一般的なオプションにより、テストクラスが XML 構成やコマンドラインから追加情報を取得できます。この機能を使用すると、1 ステップ先に進むことができ、必要に応じて追加情報を解決できるようになります。

ファイル オプションの例

ファイル @option の例

@Option(name = 'config-file')
    private File mConfigFile;
    

上記は XML 構成を通じて設定できます。

<option name="config-file" value="/tmp/file" />
    

またはコマンドを使用することもできます。

--config-file /tmp/file
    

説明

この機能を使用することで、ユーザーからはリモートにあるローカル ファイルの @Options ファイル形式をシームレスに解決できるようにします。

これを行うには、ファイルをリモート スタイル パスで指定する必要があります。たとえば次のようになります。

--config-file gs://bucket/tmp/file
    

このパスは、保存先の Google Cloud Storage(GCS)バケット内のファイルを指します。Tradefed はリモートパスを参照して、ファイルのローカルへのダウンロードと @Option への割当を試行します。これで mConfigFile 変数がローカル バージョンのファイルを指定できるようになり、テストで使用できるようになります。

リモート ファイルがなんらかの理由でダウンロードできない場合、Tradefed は ConfigurationException をスローしテスト実行をできないようにします。テストのアーティファクトも欠落することになるので、ファイルが欠落することは重大な失敗と見なされます。

サポートされているプロトコル

正式にサポートされているダウンロード可能なプロトコルと形式は次のとおりです。

Google Cloud Storage、プロトコル: gs、形式: gs://<bucket name>/path

制限事項

現在のところ、@Option の動的解決でサポートされるプロトコルと場所は限られています。@Option の解決は現在、メインの XML Tradefed 構成に対してのみ有効です。スイートとして実行している場合、現在のモジュール(AndroidTest.xml)はファイルを解決されません。これは、モジュールが未知の依存関係を生成しないようにするためです。

新しいプロトコルの実装

サポートされているプロトコルは、IRemoteFileResolver インターフェースの Tradefed に実装できます。これにより、ファイルパスで照合されるプロトコルの短いタグが定義されます。たとえば、gs は Google Cloud Storage プロトコルで使用されます。

実装されたプロトコルは DynamicRemoteFileResolver マップに追加して、サポートを正式に有効化できます。