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)
检查列表中的所有值是否都是 double 值。 |
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,如果未执行任何汇总,则为 null。 |
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)
检查列表中的所有值是否都是 double 值。
| 参数 | |
|---|---|
rawValues |
List:要检查的值的列表。 |
| 返回 | |
|---|---|
boolean |
如果所有值都是 double 值,则为 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 版本。默认情况下,testFailed 为 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:如果为 null,则创建新文件并写入指标;否则,将测试标题名称和指标附加到文件中。 |
| 返回 | |
|---|---|
File |
包含指标的文件。 |