Rozpocznij testowanie systemu Android w laboratorium testowym Firebase

Laboratorium testowe Firebase umożliwia testowanie aplikacji na różnych urządzeniach i w różnych konfiguracjach. Ten przewodnik wprowadzający zawiera ścieżkę implementacji, którą możesz śledzić, a także wprowadzenie do oferty firmy Test Lab dla systemu Android.

Informacje na temat przydziałów i planów cenowych laboratorium testowego można znaleźć w sekcji Użycie, przydziały i ceny .

Kluczowe idee

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.

Krok 1 : Przygotuj test do przesłania do laboratorium testowego

Dostępne typy testów

Za pomocą Laboratorium testowego możesz uruchomić następujące testy. Należy pamiętać, że wszystkie typy testów są ograniczone do 45 minut na urządzeniach fizycznych i 60 minut na urządzeniach wirtualnych. Każdy nieprzechwycony wyjątek spowoduje niepowodzenie testu.

  • Test oprzyrządowania lub test jednostkowy oprzyrządowania : test napisany przy użyciu frameworków Espresso lub UI Automator . Za pomocą tego testu możesz wyraźnie stwierdzić stan aplikacji, aby zweryfikować poprawność działania za pomocą interfejsów AndroidJUnitRunnerAPI .

  • Test Robo : automatyczny test, który analizuje interfejs użytkownika aplikacji, a następnie bada go metodycznie, symulując działania użytkownika, bez konieczności pisania kodu. Aby uzyskać więcej informacji, odwiedź stronę Informacje o testach Robo .

  • Test pętli gry : test wykorzystujący „tryb demonstracyjny” do symulowania działań gracza w aplikacjach do gier. Jest to szybki i skalowalny sposób sprawdzenia, czy Twoja gra dobrze działa w oczach użytkowników. Jeśli zdecydujesz się uruchomić test pętli gry, możesz:

    • Napisz testy natywne dla twojego silnika gry

    • Unikaj pisania tego samego kodu dla różnych interfejsów użytkownika lub platform testowych

    • Opcjonalnie utwórz wiele pętli do uruchomienia w ramach jednego testu (odwiedź Informacje o testach pętli gry , aby dowiedzieć się więcej). Możesz także organizować pętle za pomocą etykiet, dzięki czemu możesz je śledzić i ponownie uruchamiać określone pętle.

    Instrukcje dotyczące uruchamiania tego testu w laboratorium testowym znajdziesz w artykule Uruchamianie testu pętli gry .

Narzędzia do przeprowadzenia testu

Możesz wybrać następujące narzędzia, za pomocą których chcesz uruchomić test:

Możesz także bezpłatnie przetestować swoją aplikację w Laboratorium testowym, przesyłając i publikując pliki APK aplikacji w Sklepie Play, korzystając z kanału alfa lub beta. Aby uzyskać więcej informacji, zobacz Korzystanie z raportów przed uruchomieniem w celu identyfikacji problemów i Testy Robo .

Krok 2 : Wybierz urządzenie testowe

Laboratorium testowe umożliwia testowanie kilku marek i modeli urządzeń z systemem Android zainstalowanych i działających w centrum danych Google. Testowanie na urządzeniach w Laboratorium testowym pomaga wykryć problemy, które mogą nie wystąpić podczas testowania aplikacji przy użyciu emulatorów w Android Studio. Aby dowiedzieć się więcej, zobacz Dostępne urządzenia.

Krok 3 : Przejrzyj wyniki testu

Niezależnie od tego, w jaki sposób zainicjujesz testy, wszystkimi wynikami testów zarządza Laboratorium testowe i można je przeglądać online.

Podsumowanie wyników testu jest automatycznie zapisywane i można je przeglądać w konsoli Firebase. Zawiera najbardziej istotne dane dotyczące Twojego testu, w tym filmy wideo dotyczące poszczególnych przypadków testowych, zrzuty ekranu, liczbę testów, które zakończyły się pomyślnie, niepowodzeniem lub których wyniki były niestabilne, i nie tylko.

Nieprzetworzone wyniki testów zawierają dzienniki testów i szczegóły błędów aplikacji i są automatycznie zapisywane w zasobniku Google Cloud. Jeśli określisz wiadro, jesteś odpowiedzialny za koszt przechowywania. Jeśli nie określisz zasobnika, Laboratorium testowe utworzy je dla Ciebie bezpłatnie.

Aby uzyskać więcej informacji, zobacz Analizowanie wyników laboratorium testowego Firebase.

Po zainicjowaniu testu w Android Studio możesz także przejrzeć wyniki testów w swoim środowisku programistycznym.

Czyszczenie urządzenia

Google bardzo poważnie podchodzi do bezpieczeństwa danych aplikacji. Postępujemy zgodnie ze standardami branżowymi, aby usuwać dane aplikacji i resetować ustawienia systemowe urządzeń fizycznych po każdym uruchomieniu testu, aby mieć pewność, że są one gotowe do przeprowadzenia nowych testów. W przypadku urządzeń, które możemy sflashować za pomocą niestandardowego obrazu odzyskiwania, idziemy o krok dalej, flashując te urządzenia pomiędzy przebiegami testowymi.

W przypadku urządzeń wirtualnych używanych przez Laboratorium testowe instancje urządzeń są usuwane po ich użyciu, tak że przy każdym uruchomieniu testu używana jest nowa instancja urządzenia wirtualnego.


Laboratorium testowe i usługi Google Play

Urządzenia laboratorium testowego zwykle korzystają z najnowszej wersji pakietu SDK usług Google Play, ale w przypadku niektórych z nich aktualizacja może zająć kilka dni po wydaniu nowej wersji pakietu SDK. Pamiętaj, że w przypadku niektórych urządzeń mogą wystąpić problemy ze zgodnością.

Zezwalanie urządzeniom testowym na dostęp do prywatnych serwerów zaplecza

Niektóre aplikacje mobilne muszą komunikować się z prywatnymi usługami zaplecza, aby działać poprawnie podczas testowania. Jeśli Twoje serwery zaplecza są chronione regułami zapory sieciowej, możesz zezwolić na dostęp fizycznym i wirtualnym urządzeniom Laboratorium testowego, korzystając z bloków adresów IP poniżej, aby otworzyć trasy przez zaporę.

Reklama mobilna

Laboratorium testowe zapewnia skalowalną infrastrukturę, która automatyzuje testowanie aplikacji i niestety ta funkcja może zostać niewłaściwie wykorzystana przez złośliwe aplikacje zaprojektowane w celu generowania fałszywych przychodów z reklam.

Aby złagodzić ten problem:

  • Jeśli korzystasz z zewnętrznych dostawców reklamy cyfrowej (np. sieci reklamowych lub platform DSP) lub współpracujesz z nimi, podczas tworzenia i testowania aplikacji zalecamy używanie reklam testowych, a nie prawdziwych.

  • Jeśli w teście musisz użyć prawdziwych reklam, powiadom dostawców reklam cyfrowych, z którymi współpracujesz, aby odfiltrowali przychody i cały odpowiadający im ruch generowany przez Laboratorium testowe, korzystając z poniższych bloków adresów IP . Nie musisz powiadamiać dostawców reklam należących do Google; Laboratorium Testowe zajmie się tym za Ciebie.

Adresy IP używane przez urządzenia Test Lab

Cały ruch sieciowy generowany przez urządzenia Test Lab pochodzi z następujących bloków adresów IP . Dostęp do tej listy można także uzyskać za pomocą polecenia gcloud beta firebase test ip-blocks list w interfejsie wiersza polecenia gcloud . Lista jest aktualizowana średnio raz w roku.

Platforma i typ urządzenia Blok adresów IP CIDR
Urządzenia fizyczne z systemem Android i iOS, urządzenia wirtualne Arm

70.32.128.0/19 (dodano 02-2022)

108.177.6.0/23

108.177.18.192/26 (dodano 02-2022)

108.177.29.64/27 (rozszerzony 02-2022)

108.177.31.160/27 (dodano 02-2022)

199.36.156.8/29 (dodano 02-2022)

199.36.156.16/28 (dodano 02-2022)

209.85.131.0/27 (dodano 02-2022)

2001:4860:1008::/48 (dodano 02-2022)

2001:4860:1018::/48 (dodano 02-2022)

2001:4860:1019::/48 (dodano 02-2022)

2001:4860:1020::/48 (dodano 02-2022)

2001:4860:1022::/48 (dodano 02-2022)

Urządzenia wirtualne z Androidem (bez ramienia)

34.68.194.64/29 (dodano 11-2019)

34.69.234.64/29 (dodano 11-2019)

34.73.34.72/29 (dodano 11-2019)

34.73.178.72/29 (dodano 11-2019)

34.74.10.72/29 (dodano 02-2022)

34.136.2.136/29 (dodano 02-2022)

34.136.50.136/29 (dodano 02-2022)

34.145.234.144/29 (dodano 02-2022)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27 (dodano 7-2019)

35.245.243.240/29 (dodano 02-2022)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

Bloki IP urządzeń nie są już używane

74.125.122.32/29 (usunięty 02-2022)

216.239.44.24/29 (usunięty 02-2022)