Вы должны имитировать процесс нажатия на кнопку, а затем проверить, если активность на вершине стека, который вы ищете
@RunWith(AndroidJUnit4.class)
public class YourTestClass{
@Test
public void testButton() {
Espresso.onView(ViewMatchers.withId(R.id.yourButtonId)).perform(ViewActions.click());
Assert.assertEquals(getActivityInstance().getClass(), YourActivityThatShouldStart.class);
}
private Activity getActivityInstance() {
final Activity[] currentActivity = {null};
InstrumentationRegistry.getInstrumentation().runOnMainSync(new Runnable() {
public void run() {
Collection resumedActivities = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED);
if (resumedActivities.iterator().hasNext()) {
currentActivity[0] = (Activity) resumedActivities.iterator().next();
}
}
});
return currentActivity[0];
}
}
На функции testButton есть две линии: первая нажимается на вашу кнопку, вторая - проверять итоговую активность
Эспрессо работает на основной нити, поэтому ваш штраф