Testy aplikacji na Androida możesz przeprowadzać w Firebase Test Lab na kilka sposobów, m.in. za pomocą interfejsu wiersza poleceń, Android Studio, interfejsu Test Lab w Firebase i interfejsu Testing API. Niezależnie od tego, jak rozpoczniesz testy, wyniki są przechowywane w określonym przez Ciebie projekcie w Firebase. Oprócz wymienionych wyżej narzędzi możesz też analizować wyniki za pomocą interfejsu ToolResults API. Na tej stronie dowiesz się, jak przeglądać i analizować te wyniki testów.
Najważniejsze pojęcia
W konsoli Firebase możesz zobaczyć wyniki wszystkich poprzednich testów, klikając kolejno DevOps i zaangażowanie > Laboratorium. Na tej stronie wyświetlają się wszystkie szczegółowe wyniki testów aplikacji, które zostały przetestowane w projekcie za pomocą Test Lab.
Aby przejrzeć wyniki testów, musisz najpierw zrozumieć 3 pojęcia:
Gdy uruchamiasz test lub zestaw przypadków testowych na wybranych urządzeniach i konfiguracjach, Test Lab przeprowadza test w Twojej aplikacji w ramach zadania zbiorczego, a następnie wyświetla wyniki w postaci zestawu testów.
Urządzenia × wykonania testu = zestaw testów
- Urządzenie
- Urządzenie fizyczne lub wirtualne (tylko Android), na którym przeprowadzany jest test, np. telefon, tablet lub urządzenie do noszenia. Urządzenia w zestawie testów są identyfikowane na podstawie modelu urządzenia, wersji systemu operacyjnego, orientacji ekranu i ustawień regionalnych (znanych też jako ustawienia geograficzne i językowe).
- Test, wykonanie testu
- Test (lub zestaw przypadków testowych), który ma zostać przeprowadzony na urządzeniu. Możesz przeprowadzić 1 test na urządzeniu lub opcjonalnie podzielić test na części i uruchomić jego przypadki testowe na różnych urządzeniach.
- Zestaw testów
- Zawiera stany i wyniki wykonania testu. Jeśli którekolwiek wykonanie testu w zestawie się nie powiedzie, cały zestaw się nie powiedzie.
W kolejnych sekcjach dowiesz się, jak poruszać się po wynikach testów.
Interpretowanie wyników historii testów
Gdy przejdziesz do wyników testów, klikając Test Lab, zobaczysz wyniki testów, które zostały już przeprowadzone.
Historia testów jest grupowana według aplikacji. W przypadku każdej aplikacji wyświetlane są tylko 5 najnowszych zestawów testów. Jeśli dostępnych jest więcej, możesz kliknąć link Wszystkie zestawy u dołu listy testów aplikacji, aby wyświetlić pełną listę dla tej aplikacji.
Interpretowanie wyników zestawu testów
Gdy rozpoczniesz test za pomocą interfejsu Test LabUI, nastąpi przekierowanie na stronę, na której możesz zobaczyć zestaw testów i kliknąć konkretne wykonanie testu, aby wyświetlić jego wyniki. Android Studio i narzędzie wiersza poleceń gcloud też udostępniają adres URL strony z wynikami zestawu testów.
W typowym zestawie testów możesz przeprowadzić test na kilkunastu różnych urządzeniach. Każde wykonanie testu może mieć inny wynik. Możliwe wyniki dowolnego wykonania testu w zestawie testów to:
- Zaliczone
: nie wykryto żadnych błędów. - Niezaliczone
: wykryto co najmniej 1 błąd. - Niejednoznaczne
: wyniki testu były
niejednoznaczne, prawdopodobnie z powodu błędu w Laboratorium.Test Lab - Pominięte
: wybrane wartości wymiarów
w przypadku niektórych wykonań testu w zestawie były niezgodne. Dzieje się tak, gdy wybrane urządzenia są niezgodne z co najmniej 1 wybranym poziomem interfejsu Android API.
Aby przejrzeć zbiorcze wyniki testów wszystkich zestawów testów danej aplikacji w projekcie w Firebase, kliknij nazwę aplikacji, jak pokazano w tym przykładzie:
Przykładowa strona z wynikami zestawu testów z 4 wykonaniami testu

Spowoduje to przejście do listy zestawów testów aplikacji, na której możesz kliknąć nazwę dowolnego zestawu testów, aby zobaczyć jego wyniki, oraz kliknąć nazwę aplikacji (widoczną w czerwonym polu poniżej), aby wyświetlić listę zestawów testów innych aplikacji powiązanych z projektem w Firebase.
Przykładowa strona z listą zestawów testów

Zestaw testów może zostać zaliczony, niezaliczone lub niejednoznaczny. Zestaw testów jest oznaczany jako niezaliczone lub niejednoznaczny, jeśli którekolwiek wykonanie testu w tym zestawie się nie powiedzie lub jest niejednoznaczne.
Interpretowanie wyników testu Robo
Jeśli testy zostały przeprowadzone za pomocą Robo, wyniki oprócz zwykłych danych testowych obejmują filmy i zrzuty ekranu przedstawiające Robo przeszukujące interfejs. Filmy i zrzuty ekranu zawierają wizualne wskazówki dotyczące działań, które Robo wykonał podczas przeszukiwania, podobne do funkcji „Pokaż dotknięcia” w Androidzie. Możesz użyć tych wskazówek, aby śledzić postępy Robo i odtworzyć wszelkie błędy, które może wykryć.
Przykładowy film z wynikami testu Robo

Interpretowanie wyników pojedynczego wykonania testu
Na stronie z wynikami zestawu testów kliknij jedno z wykonań testu, aby zobaczyć wynik tego konkretnego wykonania.
Przykładowa strona z wynikami wykonania testu

Na tej stronie możesz zobaczyć czas wymagany do wykonania każdego testu. Możesz też zobaczyć wyniki konkretnych przypadków testowych, które odpowiadają metodom w pliku APK testu (w przypadku testów z instrumentacją), oraz szczegółowe wyniki testów, w tym logi testów, zrzuty ekranu i filmy. W przypadku testu Robo szczegółowe wyniki testów obejmują też mapę aktywności, która graficznie pokazuje ścieżki interfejsu użytkownika, które odwiedził test Robo.
Wyniki testów z instrumentacją podzielonych na części
Aby ułatwić interpretację wyników testów z instrumentacją, Test Lab dzieli każdy test na oddzielną stronę ze szczegółowym raportem, który zawiera zrzuty stosu, logi i filmy. Ta funkcja działa niezależnie od tego, czy używasz narzędzia Android Orchestrator.
Przykładowa strona z wynikami przypadku testowego

Interpretowanie wyników testów ułatwień dostępu
Testy Robo używają narzędzia Accessibility Scanner na Androida do wykrywania problemów z ułatwieniami dostępu w aplikacji (pamiętaj, że możesz też przeprowadzić skanowanie lokalnie na urządzeniu). Instrukcje dotyczące przeglądania i interpretowania wyników testu Robo pod kątem ułatwień dostępu znajdziesz w artykule Pierwsze kroki z narzędziem Accessibility Scanner.
Ogólne informacje o tym, jak poprawić ułatwienia dostępu w aplikacji, znajdziesz w dokumentacji ułatwień dostępu dla programistów aplikacji na Androida.
Wskaźniki dotyczące skuteczności
Testy przeprowadzane na urządzeniach fizycznych zwracają też wskaźniki dotyczące skuteczności:
| Dane | Wymagana konfiguracja urządzenia |
|---|---|
| Czas uruchamiania aplikacji | API 19 lub nowsze |
| Wykorzystanie procesora | API 21 lub nowsze |
| Wykorzystanie pamięci | |
| Aktywność sieciowa | |
| Klatki na sekundę | API 21 lub nowsze i zawiera SurfaceView |
Szczegółowe wyniki testów
Szczegółowe wyniki testów są dostępne przez 90 dni od przeprowadzenia testu i są przechowywane w zasobniku Google Cloud Storage (ale są też widoczne w Firebase konsoli). Szczegółowe wyniki testów możesz wyświetlić w zasobniku Cloud Storage Cloud Storage, klikając Wyniki testów na stronie z wynikami wykonania testu. Gdy szczegółowe wyniki testów nie będą już dostępne, nadal będziesz widzieć, które testy zostały zaliczone, a które nie.
Jeśli chcesz przechowywać szczegółowe wyniki testów dłużej niż 90 dni, możesz wysyłać je do zasobnika Cloud Storage którego jesteś właścicielem, za pomocą --results-bucket opcji wiersza poleceń gcloud. Następnie możesz ustawić Wiek , aby określić, jak długo wyniki mają być przechowywane w zasobniku Cloud Storage. Informacje o tym, jak zmienić ustawienie Wiek, znajdziesz w sekcji Warunki cyklu życia.
Jeśli podczas przeprowadzania testu pojawi się błąd does not have storage.objects.create access to the Google Cloud Storage object. Permission 'storage.objects.create' denied on resource (or it may not exist).., podmiot wykonujący test może nie mieć odpowiednich uprawnień w projekcie. Domyślnie Firebase tworzy zasobnik w Google Cloud Storage, ale wymaga, aby podmiot wykonujący test miał rolę „roles/editor”, która jest rolą o szerokich uprawnieniach. Jeśli nie możesz przyznać tej roli podmiotowi, możesz użyć opcji wiersza poleceń gcloud --results-bucket.