Тест эспрессо не работает на устройстве, а не на эмуляторе
Я запускаю тест Espresso просто для проверки щелчка представления в RecyclerView и текста в представлении RecyclerView.
Тест проходит на моем эмуляторе Genymotion, не проходит на моем устройстве (Google Nexus 6), и я не могу понять, почему:
@RunWith(AndroidJUnit4.class)
public class EspressoTest {
@Rule
public ActivityTestRule<MainActivity> firstRule = new ActivityTestRule<>(MainActivity.class);
@Test
public void testRecyclerViewClick() {
Espresso.onView(ViewMatchers.withId(R.id.recycler_view_ingredients)).perform(RecyclerViewActions.actionOnItemAtPosition(0, click()));
}
//TODO: This test is not passing on my device, but it is passing on an emulator. I am not sure why, but have read about idling resources. Can you confirm how to handle?
@Test
public void testRecyclerViewText(){
Espresso.onView(ViewMatchers.withId(R.id.recycler_view_ingredients)).perform(RecyclerViewActions.scrollToPosition(0));
Espresso.onView(withText("Nutella Pie")).check(matches(isDisplayed()));
}
}