Testy aplikacji na Androida można przeprowadzać za pomocą Firebase Test Lab na kilka sposobów, m.in. za pomocą interfejsu wiersza poleceń, Android Studio, Test Lab interfejsu użytkownika w konsoli Firebase oraz interfejsu Testing API. Niezależnie od tego, jak rozpoczniesz testy, ich wyniki zostaną zapisane w podanym przez Ciebie projekcie Firebase. Wyniki możesz analizować za pomocą interfejsu ToolResults API lub dowolnego z wymienionych powyżej narzędzi. Na tej stronie dowiesz się, jak sprawdzać i analizować wyniki testów.
Najważniejsze pojęcia
Aby wyświetlić wyniki wszystkich poprzednich uruchomień testów, wybierz Test Lab w lewym panelu użytkownika projektu w konsoli Firebase. Na tej stronie wyświetlane są wszystkie uruchomienia testów w aplikacjach, które zostały przez Ciebie przetestowane w projekcie za pomocą Test Lab.
Aby sprawdzić wyniki testu, musisz najpierw zrozumieć 3 koncepcje:
Gdy uruchomisz test lub zestaw przypadków testowych na wybranych urządzeniach i w wybranych konfiguracjach, Test Lab przeprowadzi test aplikacji w partii, a następnie wyświetli wyniki w postaci macierzy testów.
Urządzenia × Uruchomienia testów = Macierz testów
- Urządzenie
- Urządzenie fizyczne lub wirtualne (tylko Android), na którym przeprowadzasz test, np. telefon, tablet lub urządzenie do noszenia. Urządzenia w macierz testów są identyfikowane na podstawie modelu urządzenia, wersji systemu operacyjnego, orientacji ekranu i lokalizacji (czyli ustawień geograficznych i językowych).
- Testuj, wykonując test
- Test (lub zestaw przypadków testowych) do uruchomienia na urządzeniu. Możesz przeprowadzić jeden test na urządzenie lub opcjonalnie podzielić test i uruchomić przypadki testowe na różnych urządzeniach.
- Zestaw testów
- Zawiera stany i wyniki testów. Jeśli którekolwiek wykonanie testu w całej macierzy się nie powiedzie, cała tablica się nie powiedzie.
W kolejnych sekcjach znajdziesz informacje o tym, jak poruszać się po wynikach testu.
Zinterpretuj wyniki historii testów
Gdy przejdziesz do wyników testu, klikając Test Lab, zobaczysz wyniki dotychczas przeprowadzonych testów.
Historia testów jest pogrupowana według aplikacji. Dla każdej aplikacji wyświetlane są tylko 5 najnowszych matryc testowych. Jeśli jest ich więcej, możesz kliknąć link Wszystkie matryce na dole listy testów aplikacji, aby wyświetlić pełną listę.
Interpretowanie wyników testu w ramach zestawu testów
Gdy rozpoczniesz test za pomocą interfejsu Test Lab, zostaniesz przekierowany na stronę, na której możesz zobaczyć swoją matrycę testów. Aby wyświetlić wyniki testu, kliknij konkretne wykonanie testu. Android Studio i polecenie gcloud podają też adres URL strony z wynikami testu matrycy.
W typowej matrycy testów możesz przeprowadzić test na kilkunastu różnych urządzeniach. Każde wykonanie testu może przynieść inny wynik. Możliwe wyniki dla każdego wykonania testu w macierz testów:
- Udane : nie wystąpiły żadne błędy.
- Niepowodzenie : wystąpił co najmniej 1 błąd.
- Niejednoznaczne : wyniki testu były niejednoznaczne, prawdopodobnie z powodu błędu Test Lab.
- Pomiń : wybrane wartości wymiarów w przypadku niektórych testów w macierzy były niezgodne. Dzieje się tak, gdy wybrane urządzenia są niezgodne z co najmniej 1 wybranym poziomem interfejsu API Androida.
Aby przejrzeć zbiorcze wyniki testów wszystkich macierzy testów dla danej aplikacji w projekcie Firebase, kliknij jej nazwę, tak jak w tym przykładzie:
Przykładowa strona z wynikami macierzy testów zawierającej tylko 4 wykonania testu
Spowoduje to wyświetlenie listy matryc testów Twojej aplikacji. Możesz kliknąć nazwę dowolnej matrycy testów, aby wyświetlić jej wyniki, oraz nazwę aplikacji (zaznaczoną na czerwono poniżej), aby wyświetlić listę matryc testów innych aplikacji powiązanych z Twoim projektem Firebase.
Strona z listą przykładowych macierzy testów
Zestaw testów może być pozytywny, negatywny lub niejednoznaczny. Jeśli jakiekolwiek testy w danym zestawie testów nie powiedzie się lub będą niejednoznaczne, zestaw testów będzie wyświetlany jako nieudany lub niejednoznaczny.
Interpretowanie wyników testu Robo
Jeśli testy zostały przeprowadzone za pomocą Robo, oprócz standardowych danych testowych otrzymasz wyniki obejmujące filmy i zrzuty ekranu przedstawiające, jak Robo indeksuje interfejs użytkownika. Film i zrzuty ekranu zawierają wizualne wskazówki dotyczące działań, które Robo wykonał podczas indeksowania, podobnie jak funkcja „Pokaż dotknięcia” w Androidzie. Możesz używać tych informacji, aby śledzić postępy Robo i powtarzać błędy, które może ono wykryć.
Przykładowy film z wynikami testu Robo
Interpretowanie wyników pojedynczego wykonania testu
Na stronie wyników macierzy testów kliknij jedno z wykonywanych testów, aby zobaczyć wynik tego konkretnego testu.
Przykład strony wyników wykonania testu
Na tej stronie możesz sprawdzić, ile czasu zajmuje wykonanie każdego testu. Możesz też wyświetlić wyniki konkretnych przypadków testowych odpowiadających metodom w pliku APK testowym (w przypadku testów instrumentacji) oraz szczegółowe wyniki testów, w tym dzienniki testów, zrzuty ekranu i filmy. W przypadku testu Robo szczegółowe wyniki testu obejmują również mapę działań, która graficznie przedstawia ścieżki interfejsu użytkownika odwiedzone podczas testu Robo.
Wyniki testu z instrumentacją w przypadku partycji
Aby ułatwić interpretowanie wyników testów z użyciem instrumentacji, Test Lab oddziela każdy test na osobnej stronie szczegółowego raportu, na której znajdują się zrzuty stosu, logi i filmy. Ta funkcja działa niezależnie od tego, czy używasz Android Orchestrator.
Przykładowa strona wyników testu przypadku
Interpretowanie wyników testów ułatwień dostępu
Testy Robo korzystają z Android Accessibility Scanner, aby wykrywać problemy z ułatwieniami dostępu w aplikacji (pamiętaj, że możesz też uruchomić skanowanie lokalnie na urządzeniu). Instrukcje dotyczące sprawdzania i interpretacji wyników testu ułatwień dostępu w teście Robo znajdziesz w artykule Pierwsze kroki z aplikacją Accessibility Scanner.
Ogólne informacje o poprawie ułatwień dostępu w aplikacji znajdziesz w dokumentacji ułatwień dostępu dla programistów aplikacji na Androida.
Dane dotyczące skuteczności
Testy na urządzeniach fizycznych zwracają też dane o wydajności:
Dane | Wymagana konfiguracja urządzenia |
---|---|
Czas uruchamiania aplikacji | Interfejs API w wersji 19 lub nowszej |
Wykorzystanie procesora | Interfejs API 21+ |
Wykorzystanie pamięci | |
Aktywność sieciowa | |
Klatki na sekundę | Interfejs API 21 lub nowszy, który zawiera SurfaceView |
Szczegółowe wyniki testu
Szczegółowe wyniki testu są dostępne przez 90 dni od jego przeprowadzenia i są przechowywane w zasośniku Google Cloud Storage (ale są też widoczne w konsoli Firebase). Szczegółowe wyniki testu możesz wyświetlić w zasobniku Cloud Storage, gdy klikniesz Wyniki testu na stronie z wynikami wykonania testu. Gdy szczegółowe wyniki testów nie są już dostępne, nadal możesz sprawdzać, które testy zostały zaliczone, a które niezaliczone.
Aby zachować szczegółowe wyniki testów przez ponad 90 dni, musisz wysłać te wyniki do zasobnika Cloud Storage, którego jesteś właścicielem, za pomocą opcji --results-bucket wiersza poleceń gcloud. Następnie możesz ustawić ustawienie Wiek, aby określić, jak długo wyniki mają być przechowywane w zasobniku Cloud Storage. Informacje o tym, jak zmienić ustawienie Wiek, znajdziesz w artykule Warunki cyklu życia.