Analizuj wyniki laboratorium testowego Firebase

Istnieje wiele sposobów wykorzystania laboratorium testowego Firebase do uruchamiania testów aplikacji na Androida, w tym interfejsu wiersza poleceń , Android Studio , interfejsu laboratorium testowego w konsoli Firebase i interfejsu API testowania . Niezależnie od tego, jak zdecydujesz się rozpocząć testy, wyniki będą przechowywane w określonym projekcie Firebase. Oprócz dowolnego z powyższych narzędzi możesz przeglądać wyniki za pomocą interfejsu API ToolResults . Na tej stronie opisano, jak przeglądać i analizować wyniki testów.

Kluczowe idee

Aby zobaczyć wyniki wszystkich poprzednich przebiegów testów, wybierz Laboratorium testowe w lewym panelu nawigacyjnym projektu w konsoli Firebase. Na tej stronie wyświetlane są wszystkie przebiegi testów aplikacji, które przetestowałeś w swoim projekcie za pomocą Laboratorium testowego.

Aby przejrzeć wyniki testów, musisz najpierw zrozumieć trzy pojęcia:

Gdy uruchamiasz test lub zestaw przypadków testowych na wybranych urządzeniach i konfiguracjach, Laboratorium testowe przeprowadza wsadowo test na Twojej aplikacji, a następnie wyświetla wyniki w postaci macierzy testów .

Urządzenia × Wykonania testów = Macierz testowa

Urządzenie
Urządzenie fizyczne lub wirtualne (tylko z Androidem), na którym uruchamiasz test, np. telefon, tablet lub urządzenie do noszenia. Urządzenia w macierzy testowej są identyfikowane na podstawie modelu urządzenia, wersji systemu operacyjnego, orientacji ekranu i ustawień regionalnych (znanych również jako ustawienia geograficzne i językowe).
Testowanie, wykonanie testu
Test (lub zestaw przypadków testowych) do uruchomienia na urządzeniu. Możesz uruchomić jeden test na każdym urządzeniu lub opcjonalnie podzielić test na fragmenty i uruchomić jego przypadki testowe na różnych urządzeniach.
Matryca testowa
Zawiera statusy i wyniki testów dla wykonań testów. Jeśli wykonanie dowolnego testu w macierzy nie powiedzie się, cała macierz zakończy się niepowodzeniem.

W poniższych sekcjach wyjaśniono, jak poruszać się po wynikach testów.

Interpretuj wyniki historii testów

Gdy przejdziesz do wyników testów, wybierając opcję Laboratorium testowe , zobaczysz wyniki dotychczas przeprowadzonych testów.

Historia testów jest pogrupowana według aplikacji. Dla każdej aplikacji wyświetlanych jest tylko pięć najnowszych macierzy testowych; jeśli dostępnych jest więcej, możesz kliknąć łącze Wszystkie macierze u dołu listy testów aplikacji, aby wyświetlić pełną listę dla tej aplikacji.

Interpretacja wyników matrycy testowej

Rozpoczynając test za pośrednictwem interfejsu laboratorium testowego , zostaniesz przekierowany na stronę, na której możesz zobaczyć matrycę testów i kliknąć konkretne wykonanie testu, aby wyświetlić wyniki testu. Android Studio i polecenie gcloud udostępniają również adres URL strony z wynikami macierzy testów.

W typowej matrycy testowej można przeprowadzić test na kilkunastu różnych urządzeniach. Każde wykonanie testu może mieć inny wynik. Możliwe wyniki dowolnego wykonania testu w macierzy testów obejmują:

  • PrzeszedłTest zaliczony : Nie napotkano żadnych usterek.
  • PrzegranyTest nieudany : Wystąpiła co najmniej jedna awaria.
  • NieprzekonywającyTest zaliczony : Wyniki testu były niejednoznaczne, prawdopodobnie z powodu błędu laboratorium testowego.
  • PominięteTest zaliczony : Wybrane wartości wymiarów dla niektórych wykonań testów w macierzy były niezgodne. Dzieje się tak, gdy wybrane urządzenia są niezgodne z co najmniej jednym wybranym poziomem interfejsu API systemu Android.

Aby przejrzeć zagregowane wyniki testów dla wszystkich macierzy testowych dla danej aplikacji w projekcie Firebase, kliknij nazwę aplikacji, jak pokazano w poniższym przykładzie:

Przykładowa strona z wynikami macierzy testów zawierająca tylko cztery wykonania testów Wyniki macierzy testowej

Spowoduje to przejście do listy macierzy testów Twojej aplikacji, gdzie możesz kliknąć nazwę dowolnej macierzy testów, aby wyświetlić wyniki macierzy testów, oraz gdzie możesz kliknąć nazwę aplikacji (pokazaną w czerwonym polu poniżej), aby wyświetlić lista macierzy testów dla innych aplikacji powiązanych z Twoim projektem Firebase.

Przykładowa strona z listą macierzy testów Lista macierzy testowych

Matryca testowa może przejść pomyślnie, zakończyć się niepowodzeniem lub być niejednoznaczna. Macierz testowa jest pokazywana jako nieudana lub niejednoznaczna, jeśli jakiekolwiek wykonania testów w tej macierzy kończą się niepowodzeniem lub są niejednoznaczne.

Interpretuj wyniki testu Robo

Jeśli przeprowadziłeś testy za pomocą Robo, Twoje wyniki obejmują filmy i zrzuty ekranu przedstawiające Robo indeksującego Twój interfejs użytkownika, oprócz zwykłych wskaźników testowych. Te filmy i zrzuty ekranu zawierają wizualne oznaczenia działań wykonanych przez Robo podczas indeksowania, podobnie jak w przypadku funkcji „Pokaż dotknięcia” w systemie Android. Możesz używać tych wskazówek, aby śledzić postęp Robo i odtwarzać wszelkie błędy, które może odkryć.

Przykładowy film z wynikami testu Robo

Wyniki testów Robo

Interpretuj wyniki pojedynczego wykonania testu

Na stronie wyników macierzy testów kliknij jedno z wykonań testu, aby zobaczyć wynik tego konkretnego wykonania testu.

Przykładowa strona wyników wykonania testuWyniki wykonania testu

Na tej stronie możesz zobaczyć czas potrzebny na wykonanie każdego testu. Możesz także zobaczyć wyniki konkretnych przypadków testowych, które odpowiadają metodom w Twoim testowym pliku APK (w przypadku testów oprzyrządowania) 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ę aktywności, która graficznie przedstawia ścieżki interfejsu użytkownika odwiedzane przez test Robo.

Wyniki testów oprzyrządowania partycjonowanego

Aby pomóc Ci zinterpretować wyniki testów przyrządowych, Laboratorium testowe dzieli każdy test na własną stronę ze szczegółowym raportem, zawierającą ślady stosu, dzienniki i filmy. Ta funkcja działa niezależnie od tego, czy korzystasz z Android Orchestrator.

Przykładowa strona wyników testu Wyniki testów

Interpretuj wyniki dostępności

Testy Robo wykorzystują skaner dostępności systemu Android do wykrywania problemów z dostępnością w aplikacji (pamiętaj, że możesz także uruchomić skanowanie lokalnie na swoim urządzeniu). Instrukcje dotyczące przeglądania i interpretowania wyników testu dostępności Robo można znaleźć na stronie Pierwsze kroki ze skanerem dostępności .

Ogólne informacje o tym, jak poprawić dostępność aplikacji, znajdziesz w dokumentacji ułatwień dostępu dla programistów aplikacji na Androida .

Wskaźniki wydajności

Testy przeprowadzane na urządzeniach fizycznych zwracają również wskaźniki wydajności:

Metryczny Wymagana konfiguracja urządzenia
Czas uruchamiania aplikacji API 19+
użycie procesora API 21+
Zużycie pamięci
Aktywność sieciowa
Klatki na sekundę API 21+ i zawiera SurfaceView
Wydajność grafiki API 23+

Szczegóły wydajności grafiki

Raport wydajności grafiki zawiera statystyki dotyczące kilku kluczowych wskaźników graficznych:

  • Pominięte zdarzenia Vsync: Liczba pominiętych zdarzeń Vsync podzielona przez liczbę klatek, których renderowanie trwało dłużej niż 16 ms.
  • Duże opóźnienie wejściowe: liczba zdarzeń wejściowych, które trwały dłużej niż 24 ms, podzielona przez liczbę klatek, których renderowanie trwało dłużej niż 16 ms.
  • Powolny wątek interfejsu użytkownika: liczba przypadków, gdy ukończenie wątku interfejsu użytkownika trwało dłużej niż 8 ms, podzielona przez liczbę klatek, których renderowanie trwało dłużej niż 16 ms.
  • Powolne polecenia rysowania: liczba przypadków, gdy wysyłanie poleceń rysowania do procesora graficznego trwało dłużej niż 12 ms, podzielona przez liczbę klatek, których renderowanie trwało dłużej niż 16 ms.
  • Powolne przesyłanie bitmapy: liczba przypadków, gdy przesyłanie mapy bitowej do procesora graficznego trwało dłużej niż 3,2 ms, podzielona przez liczbę klatek, których renderowanie trwało dłużej niż 16 ms.
  • Czas renderowania: rozkład czasów renderowania dla każdej klatki przebiegu testowego. Czasy renderowania dłuższe niż 32 milisekundy powodują zauważalne spowolnienie interfejsu użytkownika. Czasy renderowania powyżej 700 oznaczają zamrożone klatki. Dane renderowania są zbierane z dumpsys graphicsstats .

Szczegółowe wyniki testów

Szczegółowe wyniki testu są dostępne przez 90 dni po uruchomieniu testu i są przechowywane w zasobniku Google Cloud Storage (ale są też widoczne w konsoli Firebase). Szczegółowe wyniki testów możesz wyświetlić w zasobniku Cloud Storage, klikając Wyniki testu na stronie wyników wykonania testu. Gdy szczegółowe wyniki testów nie są już dostępne, nadal możesz sprawdzić, które testy zakończyły się pomyślnie, a które nie.

Aby zachować szczegółowe wyniki testów przez ponad 90 dni, musisz wysłać je do swojego zasobnika Cloud Storage, korzystając z opcji wiersza poleceń --results-bucket gcloud . Następnie możesz ustawić ustawienie Wiek , aby określić, jak długo wyniki będą przechowywane w zasobniku Cloud Storage. Aby uzyskać informacje dotyczące zmiany ustawienia Wiek , zobacz Warunki cyklu życia .