Semantyka

Testy interfejsu w funkcji tworzenia wiadomości używają semantyki do interakcji z hierarchią interfejsu. Semantyka, jak wskazuje nazwa, nadaje znaczenie elementowi interfejsu. W tym kontekście „element UI” (czyli element) może oznaczać wszystko, od pojedynczej funkcji kompozycyjnej po cały ekran. Drzewo semantyki jest generowane obok hierarchii UI i opisuje hierarchię.

Więcej informacji o semantyce znajdziesz w artykule Semantyka w tworzeniu wiadomości.

Schemat przedstawiający typowy układ interfejsu wraz z mapą obrazu na odpowiednie drzewo semantyczne

Rysunek 1. Typowa hierarchia UI i jej drzewo semantyczne.

Struktura semantyki jest wykorzystywana głównie w przypadku ułatwień dostępu, więc testy wykorzystują udostępniane przez semantykę informacje o hierarchii UI. To deweloperzy decydują, co i w jakiej ilości chce udostępniać.

Przycisk zawierający grafikę i tekst

Rysunek 2. Typowy przycisk z ikoną i tekstem.

Na przykład przycisk, który składa się z ikony i elementu tekstowego, domyślne drzewo semantyki zawiera tylko etykietę tekstową „Podoba mi się”. Wynika to z faktu, że niektóre funkcje kompozycyjne, takie jak Text, już udostępniają właściwości drzewa semantycznego. Aby dodać właściwości do drzewa semantyki, użyj Modifier.

MyButton(
    modifier = Modifier.semantics { contentDescription = "Add to favorites" }
)

Dodatkowe materiały

  • Testowanie aplikacji na Androida: główna strona docelowa testowania na Androida zawiera szersze omówienie podstaw i technik testowania.
  • Podstawy testowania: dowiedz się więcej o podstawowych założeniach testowania aplikacji na Androida.
  • Testy lokalne: niektóre testy możesz przeprowadzić lokalnie, na swojej stacji roboczej.
  • Testy instrumentowane: warto też przeprowadzać testy instrumentowane. Chodzi o testy przeprowadzane bezpośrednio na urządzeniu.
  • Tryb ciągłej integracji: tryb ciągłej integracji umożliwia integrację testów z potokiem wdrażania.
  • Przetestuj różne rozmiary ekranów: warto przetestować różne rozmiary ekranów w przypadku dużej liczby urządzeń dostępnych dla użytkowników.
  • Espresso: chociaż wiedza o Espresso jest przeznaczona dla interfejsu opartego na widoku, może okazać się przydatna w niektórych aspektach testowania funkcji Compose.