ShardListener
public
class
ShardListener
extends CollectingTestListener
implements
ISupportGranularResults
| java.lang.Object | ||
| ↳ | com.android.tradefed.result.CollectingTestListener | |
| ↳ | com.android.tradefed.invoker.ShardListener | |
呼び出しシャード(複数のリソースで並列実行される呼び出し分割とも呼ばれます)から結果を収集し、別のリスナーに転送する ITestInvocationListener。
概要
パブリック コンストラクタ | |
|---|---|
ShardListener(ITestInvocationListener main)
|
|
パブリック メソッド | |
|---|---|
List<ITestInvocationListener>
|
getUnderlyingResultReporter()
|
void
|
invocationEnded(long elapsedTime)
呼び出しが終了したことを報告します(成功した場合も、エラー条件が原因で終了した場合も同様です)。 |
void
|
invocationFailed(FailureDescription failure)
エラー条件のため、呼び出しが不完全であることを報告します。 |
void
|
invocationFailed(Throwable cause)
エラー条件のため、呼び出しが不完全であることを報告します。 |
void
|
invocationSkipped(SkipReason reason)
呼び出しをスキップとして報告します。 |
void
|
invocationStarted(IInvocationContext context)
テスト呼び出しの開始を報告します。 |
void
|
logAssociation(String dataName, LogFile logFile)
場合によっては、ログをテストケースに強く関連付ける必要がありますが、直接の |
void
|
setSupportGranularResults(boolean enableGranularResults)
|
boolean
|
supportGranularResults()
レポートが詳細な結果をサポートしている場合は True、そうでない場合は False を返します。 |
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
テスト呼び出しから関連するログまたはデバッグデータを提供します。 |
void
|
testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)
|
void
|
testModuleEnded()
モジュール実行の終了を報告します。 |
void
|
testModuleStarted(IInvocationContext moduleContext)
モジュールの実行の開始を報告します。 |
void
|
testRunEnded(long elapsedTime, HashMap<String, MetricMeasurement.Metric> runMetrics)
テスト実行の終了を報告します。 |
void
|
testRunFailed(FailureDescription failure)
|
void
|
testRunFailed(String failureMessage)
致命的なエラーのため、レポートのテスト実行を完了できませんでした。 |
void
|
testRunStarted(String name, int numTests, int attemptNumber, long startTime)
テスト実行の開始を報告します。 |
パブリック コンストラクタ
ShardListener
public ShardListener (ITestInvocationListener main)
ShardListener を作成します。
| パラメータ | |
|---|---|
main |
ITestInvocationListener: 結果が転送される ITestInvocationListener。他の ShardListener との衝突を避けるため、このオブジェクトは結果を転送する際に main で同期します。結果は、呼び出しシャードが完了した後にのみ送信されます。 |
パブリック メソッド
getUnderlyingResultReporter
public List<ITestInvocationListener> getUnderlyingResultReporter ()
| 戻り値 | |
|---|---|
List<ITestInvocationListener> |
|
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 原因 |
invocationSkipped
public void invocationSkipped (SkipReason reason)
呼び出しをスキップとして報告する
| パラメータ | |
|---|---|
reason |
SkipReason |
invocationStarted
public void invocationStarted (IInvocationContext context)
テスト呼び出しの開始を報告します。
TradeFederation フレームワークによって自動的に呼び出されます。複数のデバイスのレポートをサポートするには、レポート作成者がこのメソッドをオーバーライドする必要があります。
| パラメータ | |
|---|---|
context |
IInvocationContext: 呼び出しに関する情報 |
logAssociation
public void logAssociation (String dataName,
LogFile logFile)場合によっては、ログをテストケースに強く関連付ける必要がありますが、直接 testLogSaved(String,LogDataType,InputStreamSource,LogFile) コールバックでそれを行うことはできません。したがって、このコールバックを使用すると、強力な関連付けを明示的に指定できます。
| パラメータ | |
|---|---|
dataName |
String: データの名前 |
logFile |
LogFile: 以前にロギングされ、テストケースに関連付ける必要がある LogFile。 |
setSupportGranularResults
public void setSupportGranularResults (boolean enableGranularResults)
| パラメータ | |
|---|---|
enableGranularResults |
boolean |
supportGranularResults
public boolean supportGranularResults ()
レポートが詳細な結果をサポートしている場合は True、そうでない場合は False を返します。
| 戻り値 | |
|---|---|
boolean |
|
testLog
public void testLog (String dataName,
LogDataType dataType,
InputStreamSource dataStream)テスト呼び出しに関連するログデータまたはデバッグデータを提供します。
ERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) 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 メソッドが完了するまで、データのソースが存在し、アクセス可能であることを確認する必要があります。 |
testLogSaved
public void testLogSaved (String dataName,
LogDataType dataType,
InputStreamSource dataStream,
LogFile logFile)| パラメータ | |
|---|---|
dataName |
String |
dataType |
LogDataType |
dataStream |
InputStreamSource |
logFile |
LogFile |
testModuleEnded
public void testModuleEnded ()
モジュール実行の終了を報告します。
testModuleStarted
public void testModuleStarted (IInvocationContext moduleContext)
モジュールの実行開始を報告します。このコールバックは testModuleEnded() に関連付けられており、シーケンスでは省略可能です。モジュールを使用する実行(スイートベースのランナー)でのみ使用されます。
| パラメータ | |
|---|---|
moduleContext |
IInvocationContext: モジュールの IInvocationContext。 |
testRunEnded
public void testRunEnded (long elapsedTime,
HashMap<String, MetricMeasurement.Metric> runMetrics)テスト実行の終了を報告します。FIXME: 型が異なる Map<> インターフェースを 2 つ持つことはできないため、ここでは HashMap を使用する必要があります。
| パラメータ | |
|---|---|
elapsedTime |
long: デバイスが報告した経過時間(ミリ秒単位) |
runMetrics |
HashMap: Metric を使用したテスト実行の最後にレポートされる Key-Value ペア。 |
testRunFailed
public void testRunFailed (FailureDescription failure)
FailureDescription で説明されているエラーのため、レポート テスト実行を完了できませんでした。
| パラメータ | |
|---|---|
failure |
FailureDescription: 失敗とそのコンテキストを説明する FailureDescription。 |
testRunFailed
public void testRunFailed (String failureMessage)
致命的なエラーのため、レポートのテスト実行を完了できませんでした。
| パラメータ | |
|---|---|
failureMessage |
String: 実行の失敗理由を説明する String。 |
testRunStarted
public void testRunStarted (String name,
int numTests,
int attemptNumber,
long startTime)テスト実行の開始を報告します。
| パラメータ | |
|---|---|
name |
String: テスト実行名 |
numTests |
int: テスト実行のテストの合計数 |
attemptNumber |
int: 実行名が同じで複数回実行される異なる試行を識別する注文番号。attemptNumber は 0 から始まり、新しい実行が発生するたびに増分されます。たとえば、テストが 3 回再試行される場合、同じ runName で合計 4 回実行され、attemptNumber は 0 ~ 3 になります。 |
startTime |
long: 実行の開始時刻(System.currentTimeMillis() で測定) |