UiAutomatorRunner
public
class
UiAutomatorRunner
extends Object
implements
IRemoteAndroidTestRunner
| java.lang.Object | |
| ↳ | com.android.tradefed.testtype.UiAutomatorRunner |
デバイスで UI Automator テストを実行し、結果をレポートします。UI Automator テストは、UI Automator フレームワークを利用する UI 自動化テストを実行するための専用のテストランナーです。デバイス上のテストランナーは、インストゥルメンテーション テストの出力形式をエミュレートするため、ddmlib と TF の既存の解析コードを再利用できます。これは基本的に、次のコマンドのラッパーです。 adb shell uiautomator runtest (jar files) -e class (test classes) ...
概要
パブリック コンストラクタ | |
|---|---|
UiAutomatorRunner(IDevice remoteDevice, String[] jarPaths, String runnerPath)
UI 自動化テストを実行するための UiAutomatorRunner を作成します。 |
|
パブリック メソッド | |
|---|---|
void
|
addBooleanArg(String name, boolean value)
計測コマンドに含めるブール値引数を追加します。 |
void
|
addInstrumentationArg(String name, String value)
計測コマンドに含める引数を追加します。 |
void
|
cancel()
このテスト実行のキャンセルをリクエストします。 |
IRemoteAndroidTestRunner.CoverageOutput
|
getCoverageOutputType()
ランナーによって生成されるテスト カバレッジのタイプを返します。 |
String
|
getPackageName()
最後に追加された Java クラスのパッケージ名を返します。 |
String
|
getRunnerName()
デフォルトの UiAutomatorTestRunner クラス名を返します。 |
void
|
removeInstrumentationArg(String name)
以前に追加された引数を削除します。 |
void
|
run(ITestRunListener... listeners)
このテスト実行を実行します。 |
void
|
run(
このテスト実行を実行します。 |
void
|
setAdditionalTestOutputLocation(String additionalTestDataPath)
テストアプリがアンインストールされる前にホストにコピーされる追加のテスト出力の場所を設定します。 |
void
|
setClassName(String className)
このクラスのテストのみを実行するように設定します。'run' の前に呼び出す必要があります。 |
void
|
setClassNames(String[] classNames)
指定されたクラス内のテストのみを実行するように設定します。'run' の前に呼び出す必要があります。 |
void
|
setCoverage(boolean coverage)
このテスト実行のコード カバレッジ モードを設定します。 |
void
|
setCoverageReportLocation(String arg0)
生成されたカバレッジ レポートの場所を設定します。 |
void
|
setDebug(boolean debug)
このテスト実行のデバッグモードを設定します。 |
void
|
setIgnoreSighup(boolean value)
uiautomator で SIGHUP を無視するオプションを設定します。 |
void
|
setLogOnly(boolean logOnly)
このテスト実行をログ専用モードに設定します。テストの実行はスキップされます。 |
void
|
setMaxTimeToOutputResponse(long timeout, TimeUnit unit)
デバイスでテストを実行するシェル コマンドの出力間の最大許容時間を設定します。 |
void
|
setMaxTimeout(long maxTimeout, TimeUnit unit)
計測が完了するまでの最大許容時間を設定します。 |
void
|
setMaxtimeToOutputResponse(int maxTimeToOutputResponse)
このメソッドは非推奨です。代わりに |
void
|
setMethodName(String className, String testName)
指定されたテストメソッドのみを実行するように設定します。'run' の前に呼び出す必要があります。 |
void
|
setRunName(String runName)
指定しない場合、パッケージ名が使用されます。 |
void
|
setTestCollection(boolean b)
このテスト実行をテスト収集モードに設定します。 |
void
|
setTestPackageName(String packageName)
指定されたパッケージ内のすべてのテストを実行するように設定します。'run' の前に呼び出す必要があります。 |
void
|
setTestSize(IRemoteAndroidTestRunner.TestSize size)
指定されたサイズのテストのみを実行するように設定します。 |
保護されたメソッド | |
|---|---|
String
|
getRunCommand()
|
String
|
getRunnerPath()
|
パブリック コンストラクタ
UiAutomatorRunner
public UiAutomatorRunner (IDevice remoteDevice, String[] jarPaths, String runnerPath)
UI 自動化テストを実行するための UiAutomatorRunner を作成する
| パラメータ | |
|---|---|
remoteDevice |
IDevice: 操作するリモート デバイス(テストの実行、結果の収集など) |
jarPaths |
String: UI Automator テストケースがある jar ファイルへのパス。パスは絶対パスか、デバイス上の /data/local/tmp/ からの相対パスでなければなりません |
runnerPath |
String: 使用する代替 uiautomator ランナー。null の場合もあります。この場合、デフォルトが使用されます。 |
パブリック メソッド
addBooleanArg
public void addBooleanArg (String name,
boolean value)計測コマンドに含めるブール値の引数を追加します。
| パラメータ | |
|---|---|
name |
String: 計測バンドル引数の名前 |
value |
boolean: 引数の値 |
addInstrumentationArg
public void addInstrumentationArg (String name,
String value)計測コマンドに含める引数を追加します。
「run」の前に呼び出す必要があります。指定された名前の引数がすでに指定されている場合、その値はオーバーライドされます。
| パラメータ | |
|---|---|
name |
String: 計測バンドル引数の名前 |
value |
String: 引数の値 |
キャンセル
public void cancel ()
このテスト実行のキャンセルをリクエストします。
getCoverageOutputType
public IRemoteAndroidTestRunner.CoverageOutput getCoverageOutputType ()
ランナーによって生成されるテスト カバレッジのタイプを返します。CoverageOutput をご覧ください。
| 戻り値 | |
|---|---|
IRemoteAndroidTestRunner.CoverageOutput |
|
getPackageName
public String getPackageName ()
最後に追加された Java クラスのパッケージ名を返します
| 戻り値 | |
|---|---|
String |
|
getRunnerName
public String getRunnerName ()
デフォルトの UiAutomatorTestRunner クラス名を返します
| 戻り値 | |
|---|---|
String |
|
removeInstrumentationArg
public void removeInstrumentationArg (String name)
以前に追加された引数を削除します。
| パラメータ | |
|---|---|
name |
String: 削除する計測バンドル引数の名前 |
ホームラン
public void run (ITestRunListener... listeners)
このテスト実行を実行します。
ERROR(/#run(Collection)) のコンビニエンス メソッド。
| パラメータ | |
|---|---|
listeners |
ITestRunListener: テスト結果をリッスンします |
| 例外 | |
|---|---|
AdbCommandRejectedException |
|
ShellCommandUnresponsiveException |
|
TimeoutException |
|
ホームラン
public void run (listeners)
このテスト実行を実行します。
| パラメータ | |
|---|---|
listeners |
: テスト結果のリスナーのコレクション |
| 例外 | |
|---|---|
AdbCommandRejectedException |
|
ShellCommandUnresponsiveException |
|
TimeoutException |
|
setAdditionalTestOutputLocation
public void setAdditionalTestOutputLocation (String additionalTestDataPath)
テストアプリがアンインストールされる前にホストにコピーされる追加のテスト出力の場所を設定します。例: 生成されたベンチマーク レポート。
| パラメータ | |
|---|---|
additionalTestDataPath |
String |
setClassName
public void setClassName (String className)
このクラスのテストのみを実行するように設定します。'run' の前に呼び出す必要があります。
| パラメータ | |
|---|---|
className |
String: 完全修飾クラス名(例: x.y.z) |
setClassNames
public void setClassNames (String[] classNames)
指定されたクラスのテストのみを実行するように設定します。run の前に呼び出す必要があります。
複数のクラスを指定する場合は、複数のクラス引数構文をサポートする InstrumentationTestRunner が必要です。
| パラメータ | |
|---|---|
classNames |
String: 完全修飾クラス名の配列(例: x.y.z) |
setCoverage
public void setCoverage (boolean coverage)
このテスト実行のコード カバレッジ モードを設定します。
| パラメータ | |
|---|---|
coverage |
boolean |
setCoverageReportLocation
public void setCoverageReportLocation (String arg0)
生成されたカバレッジ レポートの場所を設定します。
| パラメータ | |
|---|---|
arg0 |
String |
setDebug
public void setDebug (boolean debug)
このテスト実行のデバッグモードを設定します。true の場合、Android テストランナーは、デバッガがアタッチされるのを待ってからテストの実行に進みます。
| パラメータ | |
|---|---|
debug |
boolean |
setIgnoreSighup
public void setIgnoreSighup (boolean value)
uiautomator で SIGHUP を無視するオプションを設定します。
| パラメータ | |
|---|---|
value |
boolean: true に設定されている場合はシグナルを無視します |
setLogOnly
public void setLogOnly (boolean logOnly)
このテスト実行をログ専用モードに設定します。テストの実行はスキップされます。
| パラメータ | |
|---|---|
logOnly |
boolean |
setMaxTimeToOutputResponse
public void setMaxTimeToOutputResponse (long timeout,
TimeUnit unit)デバイスでテストを実行するシェル コマンドの出力間の最大許容時間を設定します。
これにより、テストがスタックして終了しない場合にタイムアウトを設定できます。これは、接続の通常のタイムアウトとは異なります。
デフォルトでは、タイムアウトは指定されません。
| パラメータ | |
|---|---|
timeout |
long: コマンドがレスポンスを出力しないことが許容される最大時間。値が 0 の場合、メソッドはコマンド出力が返されるまで(receiver が実行をキャンセルするまで)永久に待機し、例外をスローしません。 |
unit |
TimeUnit: ゼロ以外の maxTimeToOutputResponse 値と maxTimeout 値の単位。 |
setMaxTimeout
public void setMaxTimeout (long maxTimeout,
TimeUnit unit)計測が完了するまでの最大許容時間を設定します。
これにより、テストがスタックして終了しない場合にタイムアウトを設定できます。これは、接続の通常のタイムアウトとは異なります。
デフォルトでは、タイムアウトは指定されません。
| パラメータ | |
|---|---|
maxTimeout |
long: コマンドがレスポンスを出力しないことが許容される最大時間。値が 0 の場合、メソッドはコマンド出力が返されるまで(receiver が実行をキャンセルするまで)永久に待機し、例外をスローしません。 |
unit |
TimeUnit: ゼロ以外の maxTimeToOutputResponse 値と maxTimeout 値の単位。 |
setMaxtimeToOutputResponse
public void setMaxtimeToOutputResponse (int maxTimeToOutputResponse)
このメソッドは非推奨です。
代わりに setMaxTimeToOutputResponse(long, TimeUnit) を使用してください。
| パラメータ | |
|---|---|
maxTimeToOutputResponse |
int |
setMethodName
public void setMethodName (String className,
String testName)指定されたテストメソッドのみを実行するように設定します。'run' の前に呼び出す必要があります。
| パラメータ | |
|---|---|
className |
String: 完全修飾クラス名(例: x.y.z) |
testName |
String: メソッド名 |
setRunName
public void setRunName (String runName)
run( の ITestRunListener にレポートされるカスタム実行名を設定します。
指定しない場合、パッケージ名が使用されます
setTestCollection
public void setTestCollection (boolean b)
このテスト実行をテスト収集モードに設定します。true の場合、テストの実行をスキップし、テスト コレクションを成功させるために必要なすべての適切なランナー引数を設定します。
| パラメータ | |
|---|---|
b |
boolean |
setTestPackageName
public void setTestPackageName (String packageName)
指定されたパッケージ内のすべてのテストを実行するように設定します。'run' の前に呼び出す必要があります。
| パラメータ | |
|---|---|
packageName |
String: 完全修飾されたパッケージ名(例: x.y.z) |
setTestSize
public void setTestSize (IRemoteAndroidTestRunner.TestSize size)
指定されたサイズのテストのみを実行するように設定します。「run」の前に呼び出す必要があります。
| パラメータ | |
|---|---|
size |
IRemoteAndroidTestRunner.TestSize: 実行する TestSize。 |
保護されたメソッド
getRunCommand
protected String getRunCommand ()
| 戻り値 | |
|---|---|
String |
|
getRunnerPath
protected String getRunnerPath ()
| 戻り値 | |
|---|---|
String |
|