MetricUtility

public class MetricUtility
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.MetricUtility


包含用於儲存測試指標、彙整類似測試中的指標,以及將指標寫入檔案的常見公用程式方法。

摘要

巢狀類別

class MetricUtility.DimensionalIterationData

輔助程式類別,用於保存單一測試疊代的維度指標檔案和狀態。 

公用建構函式

MetricUtility()

公用方法

File aggregateDimensionalMetricsAndWriteToFile(List<MetricUtility.DimensionalIterationData> iterationDataList, Set<Integer> percentiles, String testIterationSeparator)

讀取所有儲存的維度指標報表檔案、匯總原始值、計算統計資料,並寫入新的匯總報表檔案。

Map<String, MetricMeasurement.Metric> aggregateMetrics(Map<String, MetricMeasurement.Metric> rawMetrics)

以半形逗號分隔的匯總指標。

File aggregateStoredTestMetricsAndWriteToFile(String fileName)

匯總從多次測試疊代收集的指標,並將匯總指標寫入測試結果檔案。

void buildMetricFilterPatterns(Set<String> strictIncludeRegEx)

建立規則運算式模式來篩選指標。

Map<String, MetricMeasurement.Metric> filterMetrics(Map<String, MetricMeasurement.Metric> parsedMetrics)

篩選符合模式的指標。

static Map<String, Double> getStats(List<Double> values, Set<Integer> percentiles, int testIterations)

從指定的值清單計算統計資料。

Map<String, List<MetricUtility.IterationData>> getTestIterations()
static boolean isAllDoubleValues(List<String> rawValues)

檢查清單中的所有值是否為雙精度值。

void setIterationSeparator(String separator)
void setMetricsUseForTestIterations(Set<String> metricsUseForTestIterations)

設定指標的規則運算式,這些指標應使用通過的測試疊代,在彙整期間計算平均值。

void setPercentiles(Set<Integer> percentiles)
void storeTestMetrics(TestDescription testDescription, Map<String, MetricMeasurement.Metric> testMetrics, boolean testFailed)

用於儲存個別測試指標,並用於匯總。

void storeTestMetrics(TestDescription testDescription, Map<String, MetricMeasurement.Metric> testMetrics)

為確保回溯相容性,storeTestMetrics 的多載版本。

File writeResultsToFile(String testFileSuffix, String testHeaderName, Map<String, String> metrics, File resultsFile)

將指標寫入檔案。

公用建構函式

MetricUtility

public MetricUtility ()

公用方法

aggregateDimensionalMetricsAndWriteToFile

public File aggregateDimensionalMetricsAndWriteToFile (List<MetricUtility.DimensionalIterationData> iterationDataList, 
                Set<Integer> percentiles, 
                String testIterationSeparator)

讀取所有儲存的維度指標報表檔案、匯總原始值、計算統計資料,並寫入新的匯總報表檔案。

參數
iterationDataList List

percentiles Set:要計算的百分位數。

testIterationSeparator String:測試疊代的區隔符。

傳回
File 包含匯總報表的 File,如果未執行匯總作業,則為空值。

aggregateMetrics

public Map<String, MetricMeasurement.Metric> aggregateMetrics (Map<String, MetricMeasurement.Metric> rawMetrics)

以半形逗號分隔的匯總指標。

參數
rawMetrics Map:在測試執行期間收集的指標。

傳回
Map<String, MetricMeasurement.Metric> 匯總指標。

aggregateStoredTestMetricsAndWriteToFile

public File aggregateStoredTestMetricsAndWriteToFile (String fileName)

匯總從多次測試疊代收集的指標,並將匯總指標寫入測試結果檔案。

參數
fileName String:寫入指標時使用的檔案名稱。

傳回
File

buildMetricFilterPatterns

public void buildMetricFilterPatterns (Set<String> strictIncludeRegEx)

建立規則運算式模式來篩選指標。

參數
strictIncludeRegEx Set

filterMetrics

public Map<String, MetricMeasurement.Metric> filterMetrics (Map<String, MetricMeasurement.Metric> parsedMetrics)

篩選符合模式的指標。

參數
parsedMetrics Map

傳回
Map<String, MetricMeasurement.Metric>

getStats

public static Map<String, Double> getStats (List<Double> values, 
                Set<Integer> percentiles, 
                int testIterations)

從指定的值清單計算統計資料。

參數
values List:用於計算匯總的原始值。

percentiles Set:要納入最終指標的統計資料。

testIterations int:用來計算平均值的疊代次數。如果為 0,系統會使用「values」清單的大小計算平均值。

傳回
Map<String, Double> 匯總值。

getTestIterations

public Map<String, List<MetricUtility.IterationData>> getTestIterations ()

傳回
Map<String, List<MetricUtility.IterationData>>

isAllDoubleValues

public static boolean isAllDoubleValues (List<String> rawValues)

檢查清單中的所有值是否為雙精度值。

參數
rawValues List:要檢查的值清單。

傳回
boolean 如果所有值都是雙精度值,則為 true,否則為 false。

setIterationSeparator

public void setIterationSeparator (String separator)

參數
separator String

setMetricsUseForTestIterations

public void setMetricsUseForTestIterations (Set<String> metricsUseForTestIterations)

設定指標的規則運算式,這些指標應使用通過的測試疊代來計算匯總期間的平均值。

參數
metricsUseForTestIterations Set:一組規則運算式字串。

setPercentiles

public void setPercentiles (Set<Integer> percentiles)

參數
percentiles Set

storeTestMetrics

public void storeTestMetrics (TestDescription testDescription, 
                Map<String, MetricMeasurement.Metric> testMetrics, 
                boolean testFailed)

用於儲存個別測試指標,並用於匯總。

參數
testDescription TestDescription:包含類別名稱和測試名稱等測試詳細資料。

testMetrics Map:為測試收集的指標。

testFailed boolean:測試是否失敗。

storeTestMetrics

public void storeTestMetrics (TestDescription testDescription, 
                Map<String, MetricMeasurement.Metric> testMetrics)

為確保回溯相容性,storeTestMetrics 的多載版本。預設值為 false。

參數
testDescription TestDescription

testMetrics Map

writeResultsToFile

public File writeResultsToFile (String testFileSuffix, 
                String testHeaderName, 
                Map<String, String> metrics, 
                File resultsFile)

將指標寫入檔案。

參數
testFileSuffix String:用做測試指標檔案名稱的後置字串。

testHeaderName String:指標會寫入測試標題名稱下方。

metrics Map:在檔案中寫入內容。

resultsFile File:如果為空值,請建立新檔案並寫入指標,否則請將測試標題名稱和指標附加至檔案。

傳回
File 檔案。