Istnieje wiele sposobów, za pomocą których można przeprowadzać testy w Laboratorium Firebase w aplikacji na Androida, w tym interfejs wiersza poleceń, Android Studio, interfejs Laboratorium w konsoli Firebase i Testing API. Niezależnie od tego, jak rozpoczniesz test, wyniki będą zapisane w wybranym przez Ciebie projekcie Firebase. Wyniki możesz przejrzeć za pomocą: ToolResults API oprócz wymienionych powyżej narzędzi. Na tej stronie dowiesz się, jak przeglądać i analizować wyniki testów.
Najważniejsze pojęcia
Aby wyświetlić wyniki wszystkich poprzednich testów, wybierz Laboratorium panelu użytkownika po lewej stronie projektu, konsoli Firebase. Na tej stronie wyświetlane są wszystkie uruchomienia testów które zostały przetestowane w ramach Laboratorium.
Aby sprawdzić wyniki testu, musisz najpierw zrozumieć 3 pojęcia:
Gdy uruchomisz test lub zbiór przypadków testowych na urządzeniach i konfiguracjach Laboratorium uruchomi test dla Twojej aplikacji partiami, a potem wyświetla wyniki w postaci macierzy testów.
Urządzenia × Uruchomienia testów = Macierz testów
- Urządzenie
- Urządzenie fizyczne lub wirtualne (tylko z Androidem), na którym przeprowadzasz test, takie jak telefonu, tabletu czy urządzenia do noszenia. Urządzenia w zestawie testów są identyfikowane przez modelu urządzenia, wersji systemu operacyjnego, orientacji ekranu i języka ustawienia geograficzne i językowe).
- Testuj, wykonując test
- Test (lub zestaw przypadków testowych) do przeprowadzenia na urządzeniu. Możesz przeprowadzić 1 test na urządzenie lub opcjonalnie podzielić test na fragmenty i uruchamiać przypadki testowe na różnych urządzeniach.
- Zestaw testów
- Zawiera stany i wyniki testów wykonanych podczas testów. Jeśli tak, nie uda się wykonać testu w macierzy, cała macierz kończy się niepowodzeniem.
W sekcjach poniżej wyjaśniamy, jak poruszać się po wynikach testu.
Interpretowanie wyników historii testów
Gdy przejdziesz do wyników testu, klikając Laboratorium, zobaczysz wyniki dotychczasowych testów.
Historia testów jest grupowana według aplikacji. Tylko pięć ostatnich macierzy testów jest wyświetlana dla każdej aplikacji; jeśli dostępnych jest więcej, możesz kliknąć Wszystkie macierze u dołu listy testów aplikacji.
Zinterpretuj wyniki macierzy testów
Rozpoczynając test w interfejsie Laboratorium: zostanie przekierowany na stronę, gdzie można zobaczyć macierz testów i kliknąć konkretne wykonanie testu, by wyświetlić jego wyniki. Android Studio, i polecenie gcloud podaj URL macierzy testów wyników wyszukiwania.
W typowej macierzy testów można przeprowadzić test na kilkunastu różnych urządzenia. Każde wykonanie testu może przynieść inny wynik. Możliwe rezultaty dla każdego wykonania testu w macierzy testów, mogą to być elementy:
- Powodzenie: : nie wystąpiły błędy.
- Niepowodzenie : co najmniej 1 błąd napotkano problem.
- Wynik niejednoznaczny (): wyniki testu to niejednoznaczny, prawdopodobnie z powodu błędu w Laboratorium.
- Pominięto : wybrane wartości wymiaru w przypadku niektórych wykonań testów w tabeli były niezgodne. Dzieje się tak, gdy wybrane urządzenia są niezgodne z co najmniej 1 interfejsem API Androida. wybranych przez Ciebie poziomach.
Aby przeglądać zbiorcze wyniki testów dla wszystkich macierzy testów dla danej aplikacji w projektu Firebase, kliknij nazwę aplikacji, tak jak w tym przykładzie:
Przykładowa strona z wynikami macierzy testów zawierającej tylko 4 wykonania testu
Wyświetli się lista macierzy testów aplikacji, na której możesz kliknąć nazwy dowolnej macierzy testów, aby zobaczyć ich wyniki i adres nazwa aplikacji (widoczna w czerwonym polu poniżej), aby wyświetlić listę macierzy testów dla innych aplikacji powiązanych z Twoim projektem Firebase.
Przykładowa strona z listą macierzy testów
Zestaw testów może zakończyć się pozytywnie, niezawiść lub być niejednoznaczny. Wyświetlana jest macierz testów jako nieudane lub niejednoznaczne, jeśli jakieś wykonania testu w tej macierzy nie powiodą się lub niejednoznaczny.
Zinterpretuj wyniki testu Robo
Jeśli testy zostały przeprowadzone przy użyciu Robo, wyniki będą obejmowały filmy i zrzuty ekranu przedstawiające Indeksowanie Robo w interfejsie użytkownika to dodatek do standardowych wskaźników testowych. Te filmy na zrzutach ekranu widać działania wykonane przez Robo podczas indeksowania, podobne do „Pokaż dotknięcia” na Androidzie. Dzięki wskazówkom możesz śledzić postępy Robo i odtwarzać błędy odkryć.
Przykładowy film z wynikami testu Robo
Zinterpretuj wyniki pojedynczego wykonania testu
Na stronie wyników macierzy testów kliknij jedno z wykonań testu, by zobaczyć w wyniku wykonania konkretnego testu.
Przykładowa strona z wynikami wykonania testu
Na tej stronie znajdziesz informację o czasie wymaganym do wykonania każdego testu. Dostępne opcje zobaczysz też wyniki dotyczące konkretnych przypadków testowych powiązanych z metodami na Twoim testowego pakietu APK (do testów z instrumentacją) oraz szczegółowych wyników testów, w tym testów dzienników, zrzutów ekranu i filmów. Test Robo, szczegółowy test obejmują również mapę działań, która graficznie pokazuje ścieżki które zostały odwiedzone przez test Robo.
Wyniki testu z instrumentacją partycjonowaną
Aby ułatwić interpretację wyników testów zdecentralizowanych, Laboratorium rozdziela każdy test na osobną stronę z raportami szczegółowymi, na której znajdziesz zrzuty stosu, dzienniki i filmy. Ta funkcja działa niezależnie od tego, czy używasz narzędzia Androidinteresor.
Przykładowa strona z wynikami przypadku testowego
Interpretowanie wyników ułatwień dostępu
Testy Robo wykrywają problemy z ułatwieniami dostępu za pomocą Android Accessibility Scanner w aplikacji (pamiętaj, że możesz też uruchomić skanowanie lokalnie na urządzeniu). Instrukcje dotyczące analizowania i interpretowania wyniki testu Robo znajdują się na stronie Pierwsze kroki z aplikacją Accessibility Scanner.
Ogólne informacje o poprawie ułatwień dostępu w aplikacji znajdziesz na stronie dokumentację na temat 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 w wersji 21 lub nowszej |
Wykorzystanie pamięci | |
Aktywność sieci | |
Klatki na sekundę | Interfejs API w wersji 21 lub nowszej i obejmuje SurfaceView |
Wydajność grafiki | Interfejs API w wersji 23 lub nowszej |
Szczegóły dotyczące wydajności karty graficznej
Raport wydajności grafiki zawiera statystyki kilku kluczowych wskaźników dotyczących grafiki:
- Pominięte synchronizacje Vsync: Liczba pominiętych zdarzeń Vsync podzielona przez liczbę wykonanych klatek ponad 16 ms.
- Duże opóźnienie sygnału wejściowego: Liczba zdarzeń związanych z sygnałami wejścia, które trwały dłużej niż 24 ms, podzielona przez liczbę zdarzeń wejściowych klatki, których renderowanie trwało ponad 16 ms.
- Powolny wątek UI: Liczba przypadków, gdy wykonanie wątku UI trwało dłużej niż 8 ms, podzielona przez liczbę klatek, których renderowanie trwało ponad 16 ms.
- Powolne rysowanie poleceń: Liczba przypadków, gdy wysłanie polecenia rysowania do GPU trwało dłużej niż 12 ms, podzielone przez liczbę klatek, których wyrenderowanie trwało ponad 16 ms.
- Powolne przesyłanie bitmap: Liczba przypadków, gdy przesłanie bitmapy do GPU trwało dłużej niż 3,2 ms podzielone przez liczbę klatek, których wyrenderowanie trwało ponad 16 ms.
- Czas renderowania: rozkład czasu renderowania każdej klatki
i testowania. Renderowanie dłuższe niż 32 milisekundy powoduje
spowolni działanie interfejsu. Czas renderowania powyżej 700 oznacza zablokowane klatki. Renderowanie
są zbierane z
dumpsys graphicsstats
.
Szczegółowe wyniki testu
Szczegółowe wyniki testu są dostępne przez 90 dni po przeprowadzeniu testu i są przechowywane w zasobniku Google Cloud Storage (ale są również widoczne w konsoli Firebase). Szczegółowe wyniki testów możesz wyświetlić w Cloud Storage po kliknięciu Testuj wyniki na stronie z wynikami wykonania testu. Jeśli szczegółowe wyniki testów nie są już dostępne, możesz sprawdzić, które zaliczonych lub niezaliczonych.
Aby przechowywać szczegółowe wyniki testu przez ponad 90 dni, musisz: aby wysłać wyniki testu do należącego do Ciebie zasobnika Cloud Storage za pomocą --results-bucket opcja wiersza poleceń gcloud. Następnie możesz ustawić Wiek, aby określić, jak długo wyniki mają być przechowywane w swojego zasobnika Cloud Storage. Zobacz Warunki cyklu życia aby dowiedzieć się, jak zmienić ustawienie Wiek.