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
This commit is contained in:
Jack Wang
2009-11-06 20:53:47 -08:00
parent 075997f12e
commit 4f414bd7a7
5 changed files with 80 additions and 134 deletions

View File

@@ -133,7 +133,7 @@ public class AndroidTestRunner extends BaseTestRunner {
}
return new TestResult();
}
void setSkipExecution(boolean skip) {
mSkipExecution = skip;
}
@@ -165,7 +165,7 @@ public class AndroidTestRunner extends BaseTestRunner {
for (TestCase testCase : mTestCases) {
setContextIfAndroidTestCase(testCase, mContext, testContext);
setInstrumentationIfInstrumentationTestCase(testCase, mInstrumentation);
setPerformanceWriterIfPerformanceTestCase(testCase, mPerfWriter);
setPerformanceWriterIfPerformanceCollectorTestCase(testCase, mPerfWriter);
testCase.run(mTestResult);
}
}
@@ -188,10 +188,10 @@ public class AndroidTestRunner extends BaseTestRunner {
}
}
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);
}
}