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)

場合によっては、ログをテストケースに強く関連付ける必要がありますが、直接の testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) コールバックでそれを行うことはできません。

ログとテストの関連付けを更新します。

processAllTestMetricsAndLogs(ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)

このメソッドを実装して、すべてのテストで指標とログを集計します。

abstract processRunMetricsAndLogs( rawMetrics, runLogs)

このメソッドを実装して、既存の指標とログから新しい指標のセットを生成します。

processTestMetricsAndLogs(TestDescription testDescription, testMetrics, testLogs)

このメソッドを実装して、各テストの指標とログを後処理します。

final void setLogSaver(ILogSaver logSaver)

実装者がファイルを保存できるように ILogSaver を設定します。

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

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

final void testEnded(TestDescription test, testMetrics)

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

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

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

final void testRunFailed(FailureDescription failure)

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

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)

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

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

public  processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, 
                 allTestLogs)

このメソッドを実装して、すべてのテストで指標とログを集計します。このメソッドから出力される指標は、実行指標としてレポートされます。新しく生成された指標のみが返される必要があります。また、一意のキー名(既存のキーとの競合は許可されません)で返される必要があります。

パラメータ
allTestMetrics ListMultimap: 指標名でグループ化された各テストの指標を保存する HashMultimap。

allTestLogs : 各テストの TestDescription をキーとして、各テストのログファイルのマップをデータ名でキー設定して保存するマップ。

戻り値
すべてのテスト指標から新たに生成された指標のセット。

processRunMetricsAndLogs

public abstract  processRunMetricsAndLogs ( rawMetrics, 
                 runLogs)

このメソッドを実装して、既存の指標とログから新しい指標のセットを生成します。新しく生成された指標のみが返される必要があります。また、キー名は一意である必要があります(既存のキーとの競合は許可されません)。

パラメータ
rawMetrics : 実行で使用可能な未加工の指標のセット。

runLogs : テスト実行のログファイルのセット。

戻り値
実行指標から新しく生成された指標のセット。

processTestMetricsAndLogs

public  processTestMetricsAndLogs (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