Oto jeden z moich przypadków testowych Espresso.Espresso - Jak mogę sprawdzić, czy działanie zostało uruchomione po wykonaniu określonej czynności?
public void testLoginAttempt() {
Espresso.onView(ViewMatchers.withId(R.id.username)).perform(ViewActions.clearText()).perform(ViewActions.typeText("[email protected]"));
Espresso.onView(ViewMatchers.withId(R.id.username)).perform(ViewActions.clearText()).perform(ViewActions.typeText("invalidpassword"));
Espresso.onView(ViewMatchers.withId(R.id.login_button)).perform(ViewActions.click());
// AFTER CLICKING THE BUTTON, A NEW ACTIVITY WILL POP UP.
// Clicking launches a new activity that shows the text entered above. You don't need to do
// anything special to handle the activity transitions. Espresso takes care of waiting for the
// new activity to be resumed and its view hierarchy to be laid out.
Espresso.onView(ViewMatchers.withId(R.id.action_logout))
.check(ViewAssertions.matches(not(ViewMatchers.isDisplayed())));
}
Obecnie to, co zrobiłem, to sprawdzenie, czy widok w nowym działaniu (R.id.action_logout) jest widoczny, czy nie. Jeśli jest widoczny, zakładam, że aktywność została pomyślnie otwarta. Ale to nie działa tak, jak się spodziewałem. Czy istnieje lepszy sposób sprawdzenia, czy nowa aktywność została pomyślnie uruchomiona, zamiast sprawdzać widok w tej aktywności jest widoczny? Dzięki
Dlaczego nie można importować ViewMatchers?'import static android.support.test.espresso.matcher.ViewMatchers. *' – Roel
@ user2062024 Czy możesz opublikować działający kod? –
Najnowsze espresso automatycznie czeka na Asyntask. – WenChao