SubprocessResultsReporter
public
class
SubprocessResultsReporter
extends Object
implements
ILogSaverListener,
ISupportGranularResults,
ITestInvocationListener
java.lang.Object | |
↳ | com.android.tradefed.result.SubprocessResultsReporter |
result_reporter として指定される ITestInvocationListener
を実装し、テスト、テスト実行、テスト呼び出しの結果をサブプロセスから転送します。
概要
パブリック コンストラクタ | |
---|---|
SubprocessResultsReporter()
|
パブリック メソッド | |
---|---|
void
|
close()
|
TestSummary
|
getSummary()
InvocationListener が概要を返すことができます。 |
void
|
invocationEnded(long elapsedTime)
呼び出しが正常に終了したか、なんらかのエラー状態が原因で終了したかを報告します。 |
void
|
invocationFailed(FailureDescription failure)
エラー状態が原因で呼び出しが完了しなかったことを報告します。 |
void
|
invocationFailed(Throwable cause)
エラー状態が原因で呼び出しが完了しなかったことを報告します。 |
void
|
invocationStarted(IInvocationContext context)
テスト呼び出しの開始を報告します。 |
void
|
logAssociation(String dataName, LogFile logFile)
場合によっては、ログをテストケースに強く関連付ける必要があります。ただし、直接の |
void
|
printEvent(String key, Object event)
イベントキーと JSON オブジェクトを出力するヘルパー。 |
void
|
setOutputTestLog(boolean outputTestLog)
ログに記録されたテストを出力するかどうかを設定します。 |
boolean
|
supportGranularResults()
レポーターが詳細な結果をサポートしている場合は true、そうでない場合は false を返します。 |
void
|
testAssumptionFailure(TestDescription testId, String trace)
アトミック テストが false の条件を前提としていることを報告するフラグが立てられたときに呼び出されます。 |
void
|
testAssumptionFailure(TestDescription testId, FailureDescription failure)
アトミック テストで、条件が false であるとフラグが立てられたときに呼び出されます。 |
void
|
testEnded(TestDescription testId, long endTime,
終了時間を直接指定できる |
void
|
testEnded(TestDescription testId,
個々のテストケースの実行終了を報告します。 |
void
|
testFailed(TestDescription testId, FailureDescription failure)
個々のテストケースの失敗を報告します。 |
void
|
testFailed(TestDescription testId, String reason)
個々のテストケースの失敗を報告します。 |
void
|
testIgnored(TestDescription testId)
テストが実行されない場合に呼び出されます。通常は、テストメソッドに org.junit.Ignore がアノテーションされているためです。 |
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
テスト呼び出しの関連ログまたはデバッグデータを提供します。 |
void
|
testModuleEnded()
モジュールの実行の終了を報告します。 |
void
|
testModuleStarted(IInvocationContext moduleContext)
モジュールの実行開始を報告します。 |
void
|
testRunEnded(long time,
テスト実行の終了を報告します。 |
void
|
testRunFailed(FailureDescription failure)
|
void
|
testRunFailed(String reason)
致命的なエラーが発生したため、レポートのテスト実行が完了しませんでした。 |
void
|
testRunStarted(String runName, int testCount, int attemptNumber)
テスト実行の開始を報告します。 |
void
|
testRunStarted(String runName, int testCount)
テスト実行の開始を報告します。 |
void
|
testRunStarted(String runName, int testCount, int attemptNumber, long startTime)
テスト実行の開始を報告します。 |
void
|
testRunStopped(long arg0)
ユーザーのリクエストにより、レポートのテスト実行が完了前に停止しました。 |
void
|
testSkipped(TestDescription testId, SkipReason reason)
通常想定されない理由でテストがスキップされ、実行されなかった場合に呼び出されます。 |
void
|
testStarted(TestDescription testId, long startTime)
|
void
|
testStarted(TestDescription testId)
個々のテストケースの開始を報告します。 |
パブリック コンストラクタ
SubprocessResultsReporter
public SubprocessResultsReporter ()
パブリック メソッド
閉じる
public void close ()
getSummary
public TestSummary getSummary ()
InvocationListener が概要を返すことができます。
戻り値 | |
---|---|
TestSummary |
実行を要約した TestSummary (null の場合もあります) |
invocationEnded
public void invocationEnded (long elapsedTime)
呼び出しが正常に終了したか、なんらかのエラー状態が原因で終了したかを報告します。
TradeFederation フレームワークによって自動的に呼び出されます。
パラメータ | |
---|---|
elapsedTime |
long : 呼び出しの所要時間(ミリ秒単位) |
invocationFailed
public void invocationFailed (FailureDescription failure)
エラー条件により不完全な呼び出しを報告します。
TradeFederation フレームワークによって自動的に呼び出されます。
パラメータ | |
---|---|
failure |
FailureDescription : 障害の原因を説明する FailureDescription |
invocationFailed
public void invocationFailed (Throwable cause)
エラー状態が原因で呼び出しが完了しなかったことを報告します。
TradeFederation フレームワークによって自動的に呼び出されます。
パラメータ | |
---|---|
cause |
Throwable : 失敗の原因である Throwable |
invocationStarted
public void invocationStarted (IInvocationContext context)
テスト呼び出しの開始を報告します。
TradeFederation フレームワークによって自動的に呼び出されます。複数のデバイスのレポートをサポートするには、レポーターがこのメソッドをオーバーライドする必要があります。
パラメータ | |
---|---|
context |
IInvocationContext : 呼び出しに関する情報 |
logAssociation
public void logAssociation (String dataName, LogFile logFile)
場合によっては、ログをテストケースに強く関連付ける必要があります。しかし、直接の testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile)
コールバックでそうすることはできません。したがって、このコールバックを使用すると、強力な関連付けを明示的に指定できます。
パラメータ | |
---|---|
dataName |
String : データの名前 |
logFile |
LogFile : 以前にログに記録され、テストケースに関連付ける必要がある LogFile 。 |
printEvent
public void printEvent (String key, Object event)
イベントキーと JSON オブジェクトを出力するヘルパー。
パラメータ | |
---|---|
key |
String |
event |
Object |
setOutputTestLog
public void setOutputTestLog (boolean outputTestLog)
ログに記録されたテストを出力するかどうかを設定します。
パラメータ | |
---|---|
outputTestLog |
boolean |
supportGranularResults
public boolean supportGranularResults ()
レポーターが詳細な結果をサポートしている場合は true、それ以外の場合は false を返します。
戻り値 | |
---|---|
boolean |
testAssumptionFailure
public void testAssumptionFailure (TestDescription testId, String trace)
アトミック テストが false の条件を前提としていることを報告するフラグが立てられたときに呼び出されます。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |
trace |
String : 障害のスタック トレース |
testAssumptionFailure
public void testAssumptionFailure (TestDescription testId, FailureDescription failure)
アトミック テストが false の条件を前提としていることを報告するフラグが立てられたときに呼び出されます。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |
failure |
FailureDescription : 障害とそのコンテキストを記述する FailureDescription 。 |
testEnded
public void testEnded (TestDescription testId, long endTime,metrics)
終了時間を直接指定できる ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map))
の代替手段。正確な測定を行うには、testStarted(com.android.tradefed.result.TestDescription, long)
と組み合わせてください。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |
endTime |
long : テストが終了した時刻(System.currentTimeMillis() で測定) |
metrics |
: 出力された指標の ERROR(/Map) |
testEnded
public void testEnded (TestDescription testId,metrics)
個々のテストケースの実行終了を報告します。
testFailed(TestDescription, FailureDescription)
が呼び出されなかった場合、このテストは合格です。また、テストケースの実行中に生成された可能性がある Key-Value 指標も返します。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |
metrics |
: 出力された指標の ERROR(/Map) |
testFailed
public void testFailed (TestDescription testId, FailureDescription failure)
個々のテストケースの失敗を報告します。
testStarted と testEnded の間で呼び出されます。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |
failure |
FailureDescription : 障害とそのコンテキストを記述する FailureDescription 。 |
testFailed
public void testFailed (TestDescription testId, String reason)
個々のテストケースの失敗を報告します。
testStarted と testEnded の間で呼び出されます。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |
reason |
String : 障害のスタック トレース |
testIgnored
public void testIgnored (TestDescription testId)
テストが実行されないときに呼び出されます。通常はテストメソッドに org.junit.Ignore のアノテーションが付加されているためです。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |
testLog
public void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)
テスト呼び出しの関連ログまたはデバッグデータを提供します。
ERROR(/ITestInvocationListener#invocationFailed(Throwable))
または ERROR(/ITestInvocationListener#invocationEnded(long))
の前に呼び出す必要があります。
TradeFederation フレームワークは、このメソッドを自動的に呼び出し、ホストログと、必要に応じてデバイスの logcat を提供します。
パラメータ | |
---|---|
dataName |
String : データの String のわかりやすい名前(「device_logcat」など)。注: dataName は呼び出しごとに一意ではない場合があります。つまり、実装者は同じ dataName で複数の呼び出しを処理できる必要があります。 |
dataType |
LogDataType : データの LogDataType |
dataStream |
InputStreamSource : データの InputStreamSource 。実装者は createInputStream を呼び出してデータの読み取りを開始し、完了したら結果の InputStream を必ず閉じる必要があります。呼び出し元は、testLog メソッドが完了するまで、データソースが存在し、アクセス可能であることを確認する必要があります。 |
testModuleEnded
public void testModuleEnded ()
モジュール実行の終了をレポートします。
testModuleStarted
public void testModuleStarted (IInvocationContext moduleContext)
モジュールの実行開始を報告します。このコールバックは testModuleEnded()
に関連付けられており、シーケンスでは省略可能です。モジュール(スイートベースのランナー)を使用する実行中にのみ使用されます。
パラメータ | |
---|---|
moduleContext |
IInvocationContext : モジュールの IInvocationContext 。 |
testRunEnded
public void testRunEnded (long time,runMetrics)
テスト実行の終了を報告します。
パラメータ | |
---|---|
time |
long : デバイスで報告された経過時間(ミリ秒単位) |
runMetrics |
: テスト実行の終了時に報告される Key-Value ペア |
testRunFailed
public void testRunFailed (FailureDescription failure)
FailureDescription
で説明されているエラーが原因で、テスト実行が完了しなかったことを報告します。
パラメータ | |
---|---|
failure |
FailureDescription : エラーとそのコンテキストを記述する FailureDescription 。 |
testRunFailed
public void testRunFailed (String reason)
致命的なエラーが発生したため、レポートのテスト実行が完了しませんでした。
パラメータ | |
---|---|
reason |
String : 実行失敗の理由を説明する String 。 |
testRunStarted
public void testRunStarted (String runName, int testCount, int attemptNumber)
テスト実行の開始を報告します。
パラメータ | |
---|---|
runName |
String : テスト実行名 |
testCount |
int : テスト実行のテスト数の合計 |
attemptNumber |
int : オーダー番号。同じ runName を複数回実行する際の試行を識別します。attemptNumber は 0 から始まり、新しい実行が行われるたびにインクリメントされます。たとえば、テストが 3 回きめ細かく再試行された場合、同じ runName で合計 4 回の実行が行われ、attemptNumber は 0 ~ 3 になります。 |
testRunStarted
public void testRunStarted (String runName, int testCount)
テスト実行の開始を報告します。
パラメータ | |
---|---|
runName |
String : テスト実行名 |
testCount |
int : テスト実行のテスト数の合計 |
testRunStarted
public void testRunStarted (String runName, int testCount, int attemptNumber, long startTime)
テスト実行の開始を報告します。
パラメータ | |
---|---|
runName |
String : テスト実行名 |
testCount |
int : テスト実行のテスト数の合計 |
attemptNumber |
int : オーダー番号。同じ runName を複数回実行する際の試行を識別します。attemptNumber は 0 から始まり、新しい実行が行われるたびにインクリメントされます。たとえば、テストが 3 回きめ細かく再試行された場合、同じ runName で合計 4 回の実行が行われ、attemptNumber は 0 ~ 3 になります。 |
startTime |
long : 実行が開始された時刻(System.currentTimeMillis() で測定) |
testRunStopped
public void testRunStopped (long arg0)
ユーザー リクエストが原因で、テスト実行が完了する前に停止したことを報告します。
TODO: 現在使用されていません。削除を検討してください
パラメータ | |
---|---|
arg0 |
long : デバイスが報告した経過時間(ミリ秒単位) |
testSkipped
public void testSkipped (TestDescription testId, SkipReason reason)
通常想定されない理由でテストがスキップされ、実行されなかった場合に呼び出されます。これらのテストは、適切な実行を試すために再試行されます。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |
reason |
SkipReason : SkipReason |
testStarted
public void testStarted (TestDescription testId, long startTime)
testStarted(com.android.tradefed.result.TestDescription)
の代替手段。テストの開始時刻も指定します。ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map))
と組み合わせて正確な測定を行います。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |
startTime |
long : テストが開始された時刻(System.currentTimeMillis() で測定) |
testStarted
public void testStarted (TestDescription testId)
個々のテストケースの開始を報告します。古いインターフェース。可能な限り testStarted(com.android.tradefed.result.TestDescription)
を使用してください。
パラメータ | |
---|---|
testId |
TestDescription : テストを識別します。 |