IPostProcessor

public interface IPostProcessor
implements IDisableable, ILogSaverListener, ITestInvocationListener

com.android.tradefed.postprocessor.IPostProcessor


後續處理器是 Trade Federation 物件,用於在測試後和結果回報前處理指標和記錄。這樣一來,所有 result_reporter 物件都能接收到後續處理的資料,不必只在一個 result_reporter 內進行後續處理,也不會發生傳遞新資料的問題。

摘要

公用方法

abstract ITestInvocationListener init(ITestInvocationListener listener)

後處理器的初始化步驟。

abstract Map<String, MetricMeasurement.Metric.Builder> processAllTestMetricsAndLogs(ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, Map<TestDescription, Map<String, LogFile>> allTestLogs)

實作這個方法,匯總所有測試的指標和記錄。

abstract Map<String, MetricMeasurement.Metric.Builder> processRunMetricsAndLogs(HashMap<String, MetricMeasurement.Metric> rawMetrics, Map<String, LogFile> runLogs)

實作這個方法,即可從現有指標和記錄產生一組新指標。

abstract Map<String, MetricMeasurement.Metric.Builder> processTestMetricsAndLogs(TestDescription testDescription, HashMap<String, MetricMeasurement.Metric> testMetrics, Map<String, LogFile> testLogs)

導入這個方法,即可後續處理各項測試的指標和記錄。

公用方法

init

public abstract ITestInvocationListener init (ITestInvocationListener listener)

後處理器的初始化步驟。確保在任何測試回呼之前呼叫。

參數
listener ITestInvocationListener

傳回
ITestInvocationListener

processAllTestMetricsAndLogs

public abstract Map<String, MetricMeasurement.Metric.Builder> processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, 
                Map<TestDescription, Map<String, LogFile>> allTestLogs)

導入這個方法,即可匯總所有測試的指標和記錄。這個方法產生的指標會回報為執行指標。只應傳回新產生的指標,且鍵名不得重複 (不得與現有鍵發生衝突)。

參數
allTestMetrics ListMultimap:HashMultimap,用於儲存每個測試的指標,並依指標名稱分組。

allTestLogs Map:地圖,用於儲存每個測試的記錄檔地圖,並以資料名稱做為鍵,使用每個測試的 TestDescription 做為鍵。

傳回
Map<String, MetricMeasurement.Metric.Builder> 所有測試指標中新產生的指標集。

processRunMetricsAndLogs

public abstract Map<String, MetricMeasurement.Metric.Builder> processRunMetricsAndLogs (HashMap<String, MetricMeasurement.Metric> rawMetrics, 
                Map<String, LogFile> runLogs)

請實作這個方法,從現有指標和記錄產生一組新指標。系統只會傳回新產生的指標,且金鑰名稱不得重複 (不得與現有金鑰發生衝突)。

參數
rawMetrics HashMap:可供執行作業使用的原始指標集。

runLogs Map:測試執行的記錄檔集。

傳回
Map<String, MetricMeasurement.Metric.Builder> 從執行指標產生的一組新指標。

processTestMetricsAndLogs

public abstract Map<String, MetricMeasurement.Metric.Builder> processTestMetricsAndLogs (TestDescription testDescription, 
                HashMap<String, MetricMeasurement.Metric> testMetrics, 
                Map<String, LogFile> testLogs)

導入這個方法,即可後續處理各項測試的指標和記錄。系統只會傳回新產生的指標,且金鑰名稱不得重複 (不得與現有金鑰發生衝突)。

參數
testDescription TestDescription:描述測試的 TestDescription 物件。

testMetrics HashMap:測試中的指標集。

testLogs Map:測試期間記錄的一組檔案。

傳回
Map<String, MetricMeasurement.Metric.Builder> 從測試指標新產生的一組指標。