Przetestuj interfejs użytkownika aplikacji, aby sprawdzić, czy kod tworzenia wiadomości działa poprawnie. Dzięki temu możesz na wczesnym etapie wychwytywać błędy i poprawić jakość aplikacji.
Tworzenie zawiera zestaw testowych interfejsów API, które pozwalają znajdować elementy, weryfikować ich atrybuty i wykonywać działania użytkowników. Te interfejsy API zawierają też zaawansowane funkcje, takie jak manipulacja czasem. Te interfejsy API pozwalają tworzyć rozbudowane testy sprawdzające działanie aplikacji.
wyświetleń
Jeśli korzystasz z widoków, a nie tworzenia, zapoznaj się z sekcją ogólną Testowanie aplikacji na Androidzie.
Dobrym punktem wyjścia jest przewodnik po automatyzowaniu testów interfejsu użytkownika. Opisujemy w nim, jak zautomatyzować testy wykonywane na urządzeniu, w tym podczas korzystania z widoków danych.
Kluczowe pojęcia
Poniżej znajdziesz kilka kluczowych pojęć związanych z testowaniem kodu tworzenia wiadomości.
- Semantyki: testy tworzenia wchodzą w interakcję z interfejsem użytkownika za pomocą semantyk, które nadają mu znaczenie i są generowane razem z jego hierarchią.
- Testowanie interfejsów API: Compose udostępnia testowe interfejsy API służące do znajdowania elementów, tworzenia twierdzeń dotyczących ich stanu i właściwości oraz wykonywania działań w celu symulacji interakcji użytkowników.
- Synchronizacja: domyślnie testy tworzenia są automatycznie synchronizowane z interfejsem użytkownika, czekając na jego bezczynność przed wykonaniem asercji lub wykonania działań.
- Współdziałanie: w aplikacjach hybrydowych testy mogą bezproblemowo wchodzić w interakcje z elementami Compose i View-based, a także integrować się z innymi platformami testowymi.
Ściągawka dotycząca testów
Omówienie wszystkich najważniejszych tematów dotyczących testowania w usłudze Tworzenie wiadomości znajdziesz w ściągu do testowania.
Skonfiguruj
Skonfiguruj aplikację, aby przetestować kod tworzenia wiadomości.
Najpierw dodaj te zależności do pliku build.gradle
modułu zawierającego testy interfejsu:
// Test rules and transitive dependencies:
androidTestImplementation("androidx.compose.ui:ui-test-junit4:$compose_version")
// Needed for createComposeRule(), but not for createAndroidComposeRule<YourActivity>():
debugImplementation("androidx.compose.ui:ui-test-manifest:$compose_version")
Ten moduł zawiera ComposeTestRule
oraz implementację na Androida o nazwie AndroidComposeTestRule
. Za jej pomocą możesz ustawić opcję Utwórz
lub uzyskać dostęp do aktywności. Reguły tworzysz za pomocą funkcji fabrycznych, np. createComposeRule
lub createAndroidComposeRule
, jeśli potrzebujesz dostępu do aktywności. Typowy test interfejsu w funkcji tworzenia wiadomości wygląda tak:
// file: app/src/androidTest/java/com/package/MyComposeTest.kt
class MyComposeTest {
@get:Rule val composeTestRule = createComposeRule()
// use createAndroidComposeRule<YourActivity>() if you need access to
// an activity
@Test
fun myTest() {
// Start the app
composeTestRule.setContent {
MyAppTheme {
MainScreen(uiState = fakeUiState, /*...*/)
}
}
composeTestRule.onNodeWithText("Continue").performClick()
composeTestRule.onNodeWithText("Welcome").assertIsDisplayed()
}
}
Dodatkowe materiały
- Testowanie aplikacji na Androida: główna strona docelowa testowania aplikacji na Androida zapewnia szerszy wgląd w podstawy i techniki testowania.
- Podstawy testowania: dowiedz się więcej o podstawowych pojęciach związanych z testowaniem aplikacji na Androida.
- Testy lokalne: niektóre testy możesz przeprowadzić lokalnie na własnej stacji roboczej.
- Testy z instrumentacją: warto też przeprowadzać testy z użyciem instrumentów. Oznacza to, że testy przeprowadzane bezpośrednio na urządzeniu.
- Tryb ciągłej integracji: tryb ciągłej integracji umożliwia integrację testów z potokiem wdrożenia.
- Testowanie różnych rozmiarów ekranu: użytkownicy mają do dyspozycji wiele urządzeń, dlatego warto przetestować różne rozmiary ekranów.
- Espresso: to narzędzie jest przeznaczone dla użytkowników korzystających z widoku danych, ale wiedza o espresso może być pomocna w niektórych aspektach testowania funkcji Compose.
Ćwiczenia z programowania
Aby dowiedzieć się więcej, skorzystaj z ćwiczenia z programowania dotyczącego Jetpack Compose (w języku angielskim).
Próbki
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy JavaScript jest wyłączony
- Semantyki w obszarze tworzenia wiadomości
- Wstawianie okien w obszarze tworzenia wiadomości
- Inne uwagi