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 |
檔案。 |