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)

場合によっては、ログをテストケースに強く関連付ける必要があります。ただし、直接の testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.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, metrics)

終了時間を直接指定できる ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) の代替手段。

void testEnded(TestDescription testId, metrics)

個々のテストケースの実行終了を報告します。

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, runMetrics)

テスト実行の終了を報告します。

void testRunFailed(FailureDescription failure)

FailureDescription で説明されているエラーが原因で、テスト実行が完了しなかったことを報告します。

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)

testStarted(com.android.tradefed.result.TestDescription) の代替手段。テストの開始日時も指定します。ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) と組み合わせて正確な測定を行います。

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: テストを識別します。