@@ -20,6 +20,7 @@ import androidx.benchmark.macro.StartupMode
2020import androidx.benchmark.macro.StartupTimingMetric
2121import androidx.benchmark.macro.junit4.MacrobenchmarkRule
2222import androidx.test.ext.junit.runners.AndroidJUnit4
23+ import androidx.test.platform.app.InstrumentationRegistry
2324import org.junit.Rule
2425import org.junit.Test
2526import org.junit.runner.RunWith
@@ -31,12 +32,32 @@ class StartupBenchmark {
3132 @Test
3233 fun startup () =
3334 benchmarkRule.measureRepeated(
34- packageName = " com.google.firebase.testing.sessions " ,
35+ packageName = PACKAGE_NAME ,
3536 metrics = listOf (StartupTimingMetric ()),
3637 iterations = 5 ,
3738 startupMode = StartupMode .COLD ,
3839 ) {
3940 pressHome()
4041 startActivityAndWait()
4142 }
43+
44+ @Test
45+ fun startup_clearAppData () =
46+ benchmarkRule.measureRepeated(
47+ packageName = PACKAGE_NAME ,
48+ metrics = listOf (StartupTimingMetric ()),
49+ iterations = 5 ,
50+ startupMode = StartupMode .COLD ,
51+ ) {
52+ pressHome()
53+ InstrumentationRegistry .getInstrumentation()
54+ .uiAutomation
55+ .executeShellCommand(" pm clear $PACKAGE_NAME " )
56+ .close()
57+ startActivityAndWait()
58+ }
59+
60+ private companion object {
61+ const val PACKAGE_NAME = " com.google.firebase.testing.sessions"
62+ }
4263}
0 commit comments