BasePostProcessor
public
abstract
class
BasePostProcessor
extends Object
implements
IPostProcessor
| java.lang.Object | |
| ↳ | com.android.tradefed.postprocessor.BasePostProcessor |
すべての実装が拡張するベース IPostProcessor。最終結果レポーターの前に、後処理メソッドが呼び出されるようにします。
概要
パブリック コンストラクタ | |
|---|---|
BasePostProcessor()
|
|
パブリック メソッド | |
|---|---|
final
ITestInvocationListener
|
init(ITestInvocationListener listener)
ポスト プロセッサの初期化ステップ。 |
final
void
|
invocationEnded(long elapsedTime)
呼び出しが終了したことを報告します(成功した場合も、エラー条件が原因で終了した場合も同様です)。 |
final
void
|
invocationFailed(FailureDescription failure)
エラー条件により呼び出しが不完全になったことを報告します。 |
final
void
|
invocationFailed(Throwable cause)
エラー条件により呼び出しが不完全になったことを報告します。 |
void
|
invocationSkipped(SkipReason reason)
呼び出しをスキップとして報告します。 |
final
void
|
invocationStarted(IInvocationContext context)
転送用の呼び出しリスナー |
final
boolean
|
isDisabled()
オブジェクト全体が無効になっている場合(セットアップとティアダウンの両方をスキップ)、True を返します。 |
final
void
|
logAssociation(String dataName, LogFile logFile)
場合によっては、ログをテストケースに強く関連付ける必要がありますが、直接の ログとテストの関連付けを更新します。 |
|
processAllTestMetricsAndLogs(ListMultimap<String, MetricMeasurement.Metric> allTestMetrics,
このメソッドを実装して、すべてのテストで指標とログを集計します。 |
abstract
|
processRunMetricsAndLogs(
このメソッドを実装して、既存の指標とログから新しい指標のセットを生成します。 |
|
processTestMetricsAndLogs(TestDescription testDescription,
このメソッドを実装して、各テストの指標とログを後処理します。 |
final
void
|
setLogSaver(ILogSaver logSaver)
実装者がファイルを保存できるように |
void
|
setUp()
テスト実行前に初期化するには、子ポスト プロセッサでこのメソッドをオーバーライドします。 |
final
void
|
testAssumptionFailure(TestDescription test, String trace)
アトミック テストが、false の条件を想定していることを示すフラグを設定したときに呼び出されます。 |
final
void
|
testAssumptionFailure(TestDescription test, FailureDescription failure)
アトミック テストが、false の条件を想定していることを示すフラグを設定したときに呼び出されます。 |
final
void
|
testEnded(TestDescription test, long endTime,
終了時間を直接指定できる |
final
void
|
testEnded(TestDescription test,
個々のテストケースの実行終了を報告します。 |
final
void
|
testFailed(TestDescription test, FailureDescription failure)
個々のテストケースの失敗を報告します。 |
final
void
|
testFailed(TestDescription test, String trace)
個々のテストケースの失敗を報告します。 |
final
void
|
testIgnored(TestDescription test)
テストが実行されない場合に呼び出されます。通常、テストメソッドに org.junit.Ignore のアノテーションが付いていることが原因です。 |
final
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
このメソッドを使用して、PostProcessor 実装からファイルをログに記録します。 |
final
void
|
testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)
テストログが保存されたときに呼び出されます。 |
final
void
|
testModuleEnded()
モジュール実行の終了を報告します。 |
final
void
|
testModuleStarted(IInvocationContext moduleContext)
モジュールの実行の開始を報告します。 |
final
void
|
testRunEnded(long elapsedTime,
テスト実行の終了を報告します。 |
final
void
|
testRunFailed(FailureDescription failure)
|
final
void
|
testRunFailed(String errorMessage)
致命的なエラーのため、レポートのテスト実行を完了できませんでした。 |
final
void
|
testRunStarted(String runName, int testCount, int attemptNumber)
テスト実行の開始を報告します。 |
final
void
|
testRunStarted(String runName, int testCount)
テスト実行コールバック |
final
void
|
testRunStarted(String runName, int testCount, int attemptNumber, long startTime)
テスト実行の開始を報告します。 |
final
void
|
testRunStopped(long elapsedTime)
ユーザーのリクエストにより、レポートのテスト実行が完了前に停止しました。 |
final
void
|
testSkipped(TestDescription test, SkipReason reason)
テストがスキップされ、通常は想定されない理由で実行されなかった場合に呼び出されます。 |
final
void
|
testStarted(TestDescription test, long startTime)
|
final
void
|
testStarted(TestDescription test)
テストケースのコールバック |
保護されたメソッド | |
|---|---|
void
|
cleanUp()
|
MetricMeasurement.DataType
|
getMetricType()
必要に応じて、このメソッドをオーバーライドして指標のタイプを変更します。 |
String
|
getRunName()
|
パブリック コンストラクタ
BasePostProcessor
public BasePostProcessor ()
パブリック メソッド
init
public final ITestInvocationListener init (ITestInvocationListener listener)
ポスト プロセッサの初期化ステップ。テスト コールバックの前に呼び出されることが保証されます。
| パラメータ | |
|---|---|
listener |
ITestInvocationListener |
| 戻り値 | |
|---|---|
ITestInvocationListener |
|
invocationEnded
public final void invocationEnded (long elapsedTime)
呼び出しが終了したことを報告します(成功した場合も、エラー条件が原因で終了した場合も同様です)。
TradeFederation フレームワークによって自動的に呼び出されます。
| パラメータ | |
|---|---|
elapsedTime |
long: 呼び出しの経過時間(ミリ秒単位) |
invocationFailed
public final void invocationFailed (FailureDescription failure)
エラー条件により呼び出しが不完全になったことを報告します。
TradeFederation フレームワークによって自動的に呼び出されます。
| パラメータ | |
|---|---|
failure |
FailureDescription: 障害の原因を説明する FailureDescription |
invocationFailed
public final void invocationFailed (Throwable cause)
エラー条件により呼び出しが不完全になったことを報告します。
TradeFederation フレームワークによって自動的に呼び出されます。
| パラメータ | |
|---|---|
cause |
Throwable: 失敗の Throwable 原因 |
invocationSkipped
public void invocationSkipped (SkipReason reason)
呼び出しをスキップとして報告します
| パラメータ | |
|---|---|
reason |
SkipReason |
invocationStarted
public final void invocationStarted (IInvocationContext context)
転送用の呼び出しリスナー
| パラメータ | |
|---|---|
context |
IInvocationContext: 呼び出しに関する情報 |
isDisabled
public final boolean isDisabled ()
オブジェクト全体が無効になっている場合(セットアップとティアダウンの両方をスキップ)、True を返します。それ以外は False が返されます。
| 戻り値 | |
|---|---|
boolean |
|
logAssociation
public final 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。 |
processAllTestMetricsAndLogs
publicprocessAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)
このメソッドを実装して、すべてのテストで指標とログを集計します。このメソッドから出力される指標は、実行指標としてレポートされます。新しく生成された指標のみが返される必要があります。また、一意のキー名(既存のキーとの競合は許可されません)で返される必要があります。
| パラメータ | |
|---|---|
allTestMetrics |
ListMultimap: 指標名でグループ化された各テストの指標を保存する HashMultimap。 |
allTestLogs |
: 各テストの TestDescription をキーとして、各テストのログファイルのマップをデータ名でキー設定して保存するマップ。 |
| 戻り値 | |
|---|---|
|
すべてのテスト指標から新たに生成された指標のセット。 |
processRunMetricsAndLogs
public abstractprocessRunMetricsAndLogs ( rawMetrics, runLogs)
このメソッドを実装して、既存の指標とログから新しい指標のセットを生成します。新しく生成された指標のみが返される必要があります。また、キー名は一意である必要があります(既存のキーとの競合は許可されません)。
| パラメータ | |
|---|---|
rawMetrics |
: 実行で使用可能な未加工の指標のセット。 |
runLogs |
: テスト実行のログファイルのセット。 |
| 戻り値 | |
|---|---|
|
実行指標から新しく生成された指標のセット。 |
processTestMetricsAndLogs
publicprocessTestMetricsAndLogs (TestDescription testDescription, testMetrics, testLogs)
このメソッドを実装して、各テストの指標とログを後処理します。新しく生成された指標のみが返される必要があります。また、キー名は一意である必要があります(既存のキーとの競合は許されません)。
| パラメータ | |
|---|---|
testDescription |
TestDescription: テストを説明する TestDescription オブジェクト。 |
testMetrics |
: テストの指標のセット。 |
testLogs |
: テスト中にログに記録されたファイルのセット。 |
| 戻り値 | |
|---|---|
|
テスト指標から新たに生成された指標のセット。 |
setLogSaver
public final void setLogSaver (ILogSaver logSaver)
実装者がファイルを保存できるように ILogSaver を設定します。
| パラメータ | |
|---|---|
logSaver |
ILogSaver: ILogSaver |
setUp
public void setUp ()
テスト実行前に初期化するには、子ポスト プロセッサでこのメソッドをオーバーライドします。
testAssumptionFailure
public final void testAssumptionFailure (TestDescription test, String trace)
アトミック テストが、false の条件を想定していることを示すフラグを設定したときに呼び出されます
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
trace |
String: 失敗のスタック トレース |
testAssumptionFailure
public final void testAssumptionFailure (TestDescription test, FailureDescription failure)
アトミック テストが、false の条件を想定していることを示すフラグを設定したときに呼び出されます
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
failure |
FailureDescription: 失敗とそのコンテキストを説明する FailureDescription。 |
testEnded
public final void testEnded (TestDescription test, long endTime,testMetrics)
終了時間を直接指定できる ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) の代替。testStarted(com.android.tradefed.result.TestDescription, long) と組み合わせて正確な測定を行います。
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
endTime |
long: テストが終了した時刻(System.currentTimeMillis() で測定) |
testMetrics |
: 出力された指標の ERROR(/Map) |
testEnded
public final void testEnded (TestDescription test,testMetrics)
個々のテストケースの実行終了を報告します。
testFailed(TestDescription, FailureDescription) が呼び出されなかった場合、このテストは合格です。テストケースの実行中に生成された Key-Value 指標も返します。
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
testMetrics |
: 出力された指標の ERROR(/Map) |
testFailed
public final void testFailed (TestDescription test, FailureDescription failure)
個々のテストケースの失敗を報告します。
testStarted と testEnded の間に呼び出されます。
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
failure |
FailureDescription: 失敗とそのコンテキストを説明する FailureDescription。 |
testFailed
public final void testFailed (TestDescription test, String trace)
個々のテストケースの失敗を報告します。
testStarted と testEnded の間に呼び出されます。
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
trace |
String: 失敗のスタック トレース |
testIgnored
public final void testIgnored (TestDescription test)
テストが実行されない場合に呼び出されます。通常、テストメソッドに org.junit.Ignore のアノテーションが付けられていることが原因です。
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
testLog
public final void testLog (String dataName,
LogDataType dataType,
InputStreamSource dataStream)このメソッドを使用して、PostProcessor 実装からファイルをログに記録します。
| パラメータ | |
|---|---|
dataName |
String: データの String わかりやすい名前(例: device_logcat)。注: dataName は呼び出しごとに一意でない場合があります。つまり、実装者は同じ dataName での複数の呼び出しを処理できる必要があります。 |
dataType |
LogDataType: データの LogDataType |
dataStream |
InputStreamSource: データの InputStreamSource。実装者は、createInputStream を呼び出してデータの読み取りを開始し、完了したら結果の InputStream を必ず閉じます。呼び出し元は、testLog メソッドが完了するまで、データのソースが存在し、アクセス可能であることを確認する必要があります。 |
testLogSaved
public final void testLogSaved (String dataName,
LogDataType dataType,
InputStreamSource dataStream,
LogFile logFile)テストログが保存されたときに呼び出されます。
ITestInvocationListener.testLog(String, LogDataType,
InputStreamSource) の代わりに使用する必要があります。
| パラメータ | |
|---|---|
dataName |
String: データの String わかりやすい名前(例: device_logcat)。注: dataName は呼び出しごとに一意でない場合があります。つまり、実装者は同じ dataName での複数の呼び出しを処理できる必要があります。 |
dataType |
LogDataType: データの LogDataType |
dataStream |
InputStreamSource: データの InputStreamSource。実装者は、createInputStream を呼び出してデータの読み取りを開始し、完了したら結果の InputStream を必ず閉じます。 |
logFile |
LogFile: 保存されたファイルのメタデータを含む LogFile。 |
testModuleEnded
public final void testModuleEnded ()
モジュール実行の終了を報告します。
testModuleStarted
public final void testModuleStarted (IInvocationContext moduleContext)
モジュールの実行開始を報告します。このコールバックは testModuleEnded() に関連付けられており、シーケンスでは省略可能です。モジュールを使用する実行(スイートベースのランナー)でのみ使用されます。
| パラメータ | |
|---|---|
moduleContext |
IInvocationContext: モジュールの IInvocationContext。 |
testRunEnded
public final void testRunEnded (long elapsedTime,
runMetrics) テスト実行の終了を報告します。
| パラメータ | |
|---|---|
elapsedTime |
long: デバイスが報告した経過時間(ミリ秒単位) |
runMetrics |
: テスト実行の最後にレポートされる Key-Value ペア |
testRunFailed
public final void testRunFailed (FailureDescription failure)
FailureDescription で説明されているエラーのため、テスト実行が完了しなかったことを報告します。
| パラメータ | |
|---|---|
failure |
FailureDescription: 失敗とそのコンテキストを説明する FailureDescription。 |
testRunFailed
public final void testRunFailed (String errorMessage)
致命的なエラーのため、レポートのテスト実行を完了できませんでした。
| パラメータ | |
|---|---|
errorMessage |
String: 実行の失敗理由を説明する String。 |
testRunStarted
public final void testRunStarted (String runName,
int testCount,
int attemptNumber)テスト実行の開始を報告します。
| パラメータ | |
|---|---|
runName |
String: テスト実行名 |
testCount |
int: テスト実行のテストの合計数 |
attemptNumber |
int: 実行名が同じで複数回実行される異なる試行を識別する注文番号。attemptNumber は 0 から始まり、新しい実行が発生するたびに増分されます。たとえば、テストが 3 回きめ細かく再試行された場合、同じ runName で合計 4 回の実行が行われ、attemptNumber は 0 ~ 3 になります。 |
testRunStarted
public final void testRunStarted (String runName,
int testCount)テスト実行のコールバック
| パラメータ | |
|---|---|
runName |
String: テスト実行名 |
testCount |
int: テスト実行のテストの合計数 |
testRunStarted
public final void testRunStarted (String runName,
int testCount,
int attemptNumber,
long startTime)テスト実行の開始を報告します。
| パラメータ | |
|---|---|
runName |
String: テスト実行名 |
testCount |
int: テスト実行のテストの合計数 |
attemptNumber |
int: 実行名が同じで複数回実行される異なる試行を識別する注文番号。attemptNumber は 0 から始まるインデックスで、新しい実行が発生するたびに増分されます。たとえば、テストが 3 回きめ細かく再試行される場合、同じ runName で合計 4 回の実行が行われ、attemptNumber は 0 から 3 になります。 |
startTime |
long: 実行が開始された時刻(System.currentTimeMillis() で測定) |
testRunStopped
public final void testRunStopped (long elapsedTime)
ユーザーのリクエストにより、レポートのテスト実行が完了前に停止しました。
TODO: 現在使用されていません。削除することを検討してください
| パラメータ | |
|---|---|
elapsedTime |
long: デバイスが報告した経過時間(ミリ秒単位) |
testSkipped
public final void testSkipped (TestDescription test, SkipReason reason)
テストがスキップされ、通常は想定されない理由で実行されなかった場合に呼び出されます。これらのテストは、適切な実行を試みるために再試行されます。
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
reason |
SkipReason: SkipReason |
testStarted
public final void testStarted (TestDescription test, long startTime)
テストの開始時刻も指定する testStarted(com.android.tradefed.result.TestDescription) の代替。ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) と組み合わせて正確な測定を行います。
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
startTime |
long: テストが開始された時刻(System.currentTimeMillis() で測定) |
testStarted
public final void testStarted (TestDescription test)
テストケースのコールバック
| パラメータ | |
|---|---|
test |
TestDescription: テストを識別します |
保護されたメソッド
cleanUp
protected void cleanUp ()
getMetricType
protected MetricMeasurement.DataType getMetricType ()
必要に応じて、このメソッドをオーバーライドして指標のタイプを変更します。デフォルトでは、指標は処理済みタイプに設定されています。
| 戻り値 | |
|---|---|
MetricMeasurement.DataType |
|
getRunName
protected String getRunName ()
| 戻り値 | |
|---|---|
String |
|