Make perf metrics collection & output via instrumentation simpler
- Added includeDetailedStats metadata to TimedTest for collecting additional
metrics like memory usage and binder transactions
- Added PerformanceCollectorTestCase interface for hard-typing test class as
performance test while still able to inherit from instrumenation test classes
- Reverted previous changes to PerformanceTestBase, will deprecate
PerformanceTestBase/Case in a future CL
- Removed 'performance.' prefix from keys written to instrumentation output
diff --git a/test-runner/android/test/AndroidTestRunner.java b/test-runner/android/test/AndroidTestRunner.java
index 0f1599a..fc9832c 100644
--- a/test-runner/android/test/AndroidTestRunner.java
+++ b/test-runner/android/test/AndroidTestRunner.java
@@ -133,7 +133,7 @@
}
return new TestResult();
}
-
+
void setSkipExecution(boolean skip) {
mSkipExecution = skip;
}
@@ -165,7 +165,7 @@
for (TestCase testCase : mTestCases) {
setContextIfAndroidTestCase(testCase, mContext, testContext);
setInstrumentationIfInstrumentationTestCase(testCase, mInstrumentation);
- setPerformanceWriterIfPerformanceTestCase(testCase, mPerfWriter);
+ setPerformanceWriterIfPerformanceCollectorTestCase(testCase, mPerfWriter);
testCase.run(mTestResult);
}
}
@@ -188,10 +188,10 @@
}
}
- private void setPerformanceWriterIfPerformanceTestCase(
+ private void setPerformanceWriterIfPerformanceCollectorTestCase(
Test test, PerformanceResultsWriter writer) {
- if (PerformanceTestBase.class.isAssignableFrom(test.getClass())) {
- ((PerformanceTestBase) test).setPerformanceResultsWriter(writer);
+ if (PerformanceCollectorTestCase.class.isAssignableFrom(test.getClass())) {
+ ((PerformanceCollectorTestCase) test).setPerformanceResultsWriter(writer);
}
}