Używaj Espresso, aby pisać zwięzłe, atrakcyjne i rzetelne testy interfejsu Androida.
Poniższy fragment kodu zawiera przykładowy test Espresso:
Kotlin
@Test fun greeterSaysHello() { onView(withId(R.id.name_field)).perform(typeText("Steve")) onView(withId(R.id.greet_button)).perform(click()) onView(withText("Hello Steve!")).check(matches(isDisplayed())) }
Java
@Test public void greeterSaysHello() { onView(withId(R.id.name_field)).perform(typeText("Steve")); onView(withId(R.id.greet_button)).perform(click()); onView(withText("Hello Steve!")).check(matches(isDisplayed())); }
Podstawowy interfejs API jest mały, przewidywalny i łatwy do opanowania, ale nadal można go używać i personalizacji reklam. Espresso sprawdza oczekiwania, interakcje i twierdzenia bez rozproszenia uwagi przez schematyczne treści, niestandardową infrastrukturę lub skomplikowane szczegóły implementacji, które przeszkodzą w działaniu.
Testy Espresso przebiegają optymalnie szybko. Pozwala na odczekanie, synchronizację, uśpienie i sonduje za nimi, gdy manipuluje i głosuje na aplikację Interfejs użytkownika w stanie spoczynku.
Docelowi odbiorcy
Espresso jest skierowany do programistów, którzy uważają, że automatyczne testowanie to w całym cyklu programowania. Może być używana do tworzenia czarnej skrzynki Testowanie funkcji Espresso jest odblokowywane przez osoby, które znają bazy kodu w trakcie testów.
Możliwości synchronizacji
Za każdym razem, gdy test powoduje wywołanie
onView()
Espresso czeka na wykonanie odpowiedniego działania interfejsu lub asercji do momentu
są spełnione te warunki synchronizacji:
- W kolejce wiadomości nie ma żadnych wiadomości, które Espresso musi mieć natychmiast proces tworzenia konta.
- Nie ma obecnie uruchomionych instancji
AsyncTask
zadanie. - Wszystkie definiowane przez dewelopera nieaktywne zasoby są nieaktywne.
Przeprowadzając te testy, Espresso znacznie zwiększa prawdopodobieństwo w danym momencie może mieć miejsce tylko jedno działanie lub jedno potwierdzenie w interfejsie. Ta funkcja pozwala uzyskać bardziej wiarygodne wyniki testów.
Pakiety
espresso-core
– zawiera podstawowe i podstawowe elementy dopasowania typuView
, działania oraz asercji. Zobacz Podstawy i Przepisy.espresso-web
– zawiera zasoby pomocy dotycząceWebView
.espresso-idling-resource
– Mechanizm Espresso do synchronizacji z zadaniami w tle.espresso-contrib
– treści opublikowane przez użytkowników zewnętrznych, które zawierają te treści:DatePicker
, DziałaniaRecyclerView
iDrawer
, kontrole ułatwień dostępu orazCountingIdlingResource
.espresso-intents
– Rozszerzenie służące do weryfikacji i skrócenia intencji testów hermetycznych.espresso-remote
– lokalizacja funkcji wieloprocesowej w Espresso.
Więcej informacji o najnowszych wersjach znajdziesz w informacjami o wersji.
Dodatkowe materiały
Więcej informacji o używaniu Espresso w testach na Androidzie znajdziesz w poniższe zasoby.
Próbki
- Przykładowe fragmenty kodu Espresso Oferuje pełną gamę próbek espresso.
- Przykład podstawowy: Prosta próbka espresso.
- (więcej...)