メインコンテンツまでスキップ

Android自動化のためのカスタムパラメーター

Android Gatewayを通じても、コマンドラインを通じても、テスト対象のAndroidシステム(SUT)を自動化するときに、カスタムパラメーターを入力できます。どちらの場合も、これらのパラメーターはSystemNative2(SN2)を通じてパスされます。SN2はAndroid自動化を可能にするデバイス上のプロセスです。

パラメーターの使い方

まず、Android SUTにSN2をインストールします。Android Gatewayを開き、Androidデバイスを接続し、Android GatewayのインターフェースでStartをクリックします。Android Gatewayは接続したデバイスにSN2をインストールし、起動します。AndroidデバイスにSN2をインストールした後、Android Gatewayまたはコマンドラインを使用してそのデバイスを自動化できます。

Android Gatewayを使った自動化

Android Gatewayを使用している場合、Android GatewayのGUIのCustom Parametersフィールドにonlyパラメーターを入力します。

コマンドラインを使った自動化

コマンドラインを使用してAndroidデバイスを自動化している場合、以下の構文を使用してSN2を開き、自動化を開始します:

SystemNative2 --parameters
.

利用可能なパラメーターは以下の通りです:

接続パラメーター

これらのパラメーターはデバッグに適用されます。

パラメーター定義
--port NNNNポート番号を指定します。デフォルトは5900です。
--reverse <ip_address>逆接続のIPアドレスを指定します。
--rc-port NNNN逆接続のポート番号を指定します。デフォルトは5500です。
--always-share

--may-share

--never-share
サーバーが複数のクライアントで作業できるかどうかを指定します。デフォルト値は --always-share です。--may-share が指定された場合、クライアント設定がサーバーを共有するかどうかを決定します。--keep-connectedも参照してください。
--keep-connected

--replace-connected
サーバーがクライアント間で共有されていない場合、しかし2番目のクライアントが接続を試みるときに何をするかを選択します。--never-shareも参照してください。
--forward <Address> <Port>メッセージを別のサーバーに転送します。これはLG G5デバイスで作業するときに便利です。
--no-forwarding転送をオフにします。
--java-port <INT>SN2とEggSensor間の内部通信に指定したポートを使用します。このオプションは--es-ports NNN NNNと同じです。
--es-ports <Min> <Max>指定した範囲を繰り返し、電話上で利用可能なTCPポートを見つけ、そのポートをSN2とEggSensor間の内部通信に使用します。デフォルト範囲は6000-6050です。
--zc <host> <port>Zeroconfを有効にします。ホストはシンボリック名またはドットで区切られたIPアドレスのどちらかになることができます。

デバッグパラメーター

これらのパラメーターはAndroid接続に適用されます。

パラメーター定義
--trace-client受信および解析メッセージに関連するデバッグ情報を印刷します。
--trace-client-configクライアント設定に関連するデバッグ情報を印刷します。
--trace-client-managerメッセージ処理に関連するデバッグ情報を印刷します。
--trace-connection接続メッセージを表示します。
--trace-coreすべてのVNC/coreトレースをオンにします。
--trace-file-transferSUTからのファイル転送をトレースします。
--trace-inbound受信メッセージを表示します。
--trace-outbound画面更新メッセージを除く送信メッセージを表示します。
--trace-performanceコードの異なるセクションでどれだけの時間が費やされたかを示すテーブルを10秒ごとに出力します。
--trace-procedural手順のメッセージを表示します。
--trace-screen送信画面更新メッセージを表示します。
--trace-es-connectionSN2とEggSensor間の接続に対するトレースをオンにします。
--trace-es-otherEggSensorに関連する詳細度の低いトレースをオンにします。
--trace-keyboardキーボードイベントをトレースします。
--trace-eggboardUnicodeキーボード(Eggboard)をトレースします。
--trace-mouse-configマウスの検出と設定をトレースします。
--trace-screen-config画面キャプチャ方法の設定をトレースします。
--trace-androidAndroid特有の機能をトレースします。このトレースを--trace-coreとともに使用すると、利用可能なすべてのトレースが有効になります。

一般パラメーター

これらはAndroidテスト用の一般パラメーターです。

パラメーター定義
--helpこのヘルプファイルを表示します。
--versionバージョン情報を表示し、すぐに終了します。
--empty-passwordパスワードを空文字列に設定します。
--interactiveSN2がstdinからコマンドを読み込むようにします。
--password passwordパスワードを指定します。デフォルトは"WordToPass"です。
--no-eggsensorEggSensorを起動しません。デバイスの向きを設定することはできず、デバイスの向きを変更する通知は送信されません。このオプションはEggSensorがSUTシステムと互換性がない場合に役立つことがあります。
--enable-unicodeEggboardへのソケット接続を確立し、Unicode文字列を入力できます。デフォルトでは無効化されています。
--disable-unicodeEggboardへのソケット接続を確立しません。Unicode文字は使用できません。Eggboardが動作していないか、問題を引き起こしている場合はこのオプションを使用してください。

マウスパラメーター

これらのパラメーターはタッチジェスチャーに適用されます。

パラメーター説明
--mouse-device <PATH>マウスデバイスのパスを選択します。この値は--power-mouseと共に使用されます。このオプションはプログラムがデバイスを誤って検出した場合のみ使用すべきです。それ以外の全てのケースでは、--mouse-device-autoを使用します。
--power-mouse

--scaled-mouse

--portable-mouse
マウスを制御するためのアルゴリズムを選択します。ポータブルはタップとスワイプのみをサポートし、長押しやマルチタッチジェスチャーはサポートしません。パワーマウスは長押しとピンチをサポートします。スケールドマウスはパワーマウスと似ていますが、マウスの座標に対して異なるIDを期待します。SN2はデフォルトでパワーマウスモードを選択します。それが失敗すると、SN2はポータブルマウスモードに切り替えます。
--mouse-device-autoデフォルトで有効化されています。パワーマウスモードで動作し、マウスのパスを自動的に検出し、それがボタンマウスかどうかを判断します。
--button-mouse--power-mouseアルゴリズムを調整して、このオプションが必要ないくつかのデバイスで動作するようにします。
--no-button-mouse--power-mouseアルゴリズムを調整して、特定のデバイスで動作するようにします。ほとんどのデバイスはこのオプションで動作します。
--detect-button-mouse--power-mouse設定を使用してマウスのタイプ(ボタンまたは非ボタン)を検出しようとします。このオプションはデフォルトで有効になっています。
--timeless-mouseタイムスタンプをマウスに送信しないようにします。このオプションは、古いデバイスのテストを行う際に便利なことがあります。
--backward-mouseマウスの座標を反転します。このコマンドは廃止予定で、代わりに --mouse-rot を使用してください。
--mouse-rot 0

--mouse-rot 1

--mouse-rot 2

--mouse-rot 3
--message-spacing <#Nanoseconds>

画面パラメータ

これらのパラメータは、画面仕様(サイズ、色、回転)に適用されます。

パラメータ定義
--scale-screen <INT>画面サイズを指定した因子で縮小し、画面の更新を高速化します。例えば、--scale-screen 2は画面解像度を実際の幅と高さの半分に報告し、元のピクセル数の四分の一だけを送信します。このオプションは、高解像度の画面で作業するときに役立ちます。
--blend縮小した画面のピクセルを混合し、ドロップする代わりにします。ブレンドはより良い画像を提供しますが、ロードするのに時間がかかる場合があります。
--max-fps <number>VNCサーバーが秒あたりに撮るスクリーンショットの数を制限します。デフォルトは5です。この値は浮動小数点数でも構いません。高フレームレートは、デバイスが電源に接続されている場合でもデバイスのバッテリーを消耗します。低フレームレートは、テストの実行により多くのプロセッサ時間を割くことを可能にします。
--screen-slicing NX NY画面スライスを定義します。デフォルトでは、NXNYは8です。
--enable-jpeg

--disable-jpeg
JPEGフォーマットを使用したスクリーンショットの圧縮を有効または無効にするTightVNCエンコーディングを有効または無効にします。
--enable-zlib

--disable-zlib
zlib標準を使用した圧縮を有効または無効にします。
--jpeg-compress-level LJPEGエンコーディングの圧縮レベルを設定します。良好な品質のソース画像には、デフォルトの75が最適です。有効な範囲は0から100です。詳細については、JPEGイメージ圧縮FAQをご覧ください。
--zlib-compress-level Lzlibエンコーディングの圧縮レベルを設定します。
--rgb-auto

--rgb-reverse

--rgb-straight
--rgb-autoモードでは、デフォルトでは、サーバーはクライアントによって要求されたピクセルフォーマットに従ってピクセルのバイト順序を反転するかどうかを決定します。
--force-rotSN2にイメージの回転を強制します。Android 6.0以前では、Android OSからSN2へのイメージは回転せず、SN2がそれを回転させる必要がありました。その結果、Eggplant Functionalで読みやすく表示されます。Android 6.0以降では、SN2は既に回転したイメージを受け取ります。このオプションは、SN2にAndroid 6.0以降でもイメージを回転させるように強制します。このオプションは、この更新された動作を持っていないデバイスがある場合に実装されています。
--screen-rot 0

--screen-rot 1

--screen-rot 2

--screen-rot 3
画面をそれぞれ0度、90度、180度、270度回転させます。
--screencap-use-popen

--screencap-use-socket

--screencap-use-pipe

--screencap-use-pipe-sys2
スクリーンキャプチャの方法を選択します。デフォルトは--screencap-use-pipeです。この方法はほとんどのデバイスで動作しますが、LG H831では動作しません。...-pipeを使用する方法が最適です。なぜなら、それらはスクリーンキャプチャの中断を処理できるからです。
--screencap-use-pipe-testスクリーンキャプチャのための他のアルゴリズムを有効にします。
--screencap-dummy
--hack-orientation
--force-ts-range <X> <Y>