Firebase Test Lab umożliwia testowanie jakości aplikacji na różnych urządzeniach i w różnych konfiguracjach. Ten przewodnik zawiera omówienie najważniejszych pojęć związanych z Test Lab, ofert na iOS i instrukcji dotyczących rozpoczęcia testowania.
Informacje o Test Lab limitach i abonamentach znajdziesz w artykule Użycie, limity i ceny.
Kluczowe pojęcia i terminy
Gdy uruchomisz test lub zestaw przypadków testowych na wybranych urządzeniach i konfiguracjach, Test Lab przeprowadzi test na Twojej aplikacji w partii, a następnie wyświetli wyniki w postaci macierzy testowej.
Urządzenia × wykonania 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 macierzy testowej 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) do uruchomienia na urządzeniu. Możesz przeprowadzić 1 test na urządzenie lub opcjonalnie podzielić test na części i uruchomić jego przypadki testowe na różnych urządzeniach.
- Zestaw testów
- Zawiera stany i wyniki testów. Jeśli którekolwiek wykonanie testu w macierzy zakończy się niepowodzeniem, cała macierz zakończy się niepowodzeniem.
Krok 1. Przygotuj test do przesłania na platformę Test Lab
Za pomocą Test Lab możesz przeprowadzić te testy: Pamiętaj, że wszystkie typy testów mogą trwać maksymalnie 45 minut na urządzeniach fizycznych, a każdy nieobsłużony wyjątek spowoduje niepowodzenie testu.
XCTest (w tym XCUITests): test jednostkowy napisany przez Ciebie przy użyciu platformy XCTest. Instrukcje modyfikowania testu XCTest, aby można go było uruchamiać za pomocą Test Lab, znajdziesz w artykule Tworzenie testu XCTest.
Test Robo: automatyczny test, który analizuje interfejs aplikacji, a następnie metodycznie go eksploruje, symulując działania użytkownika bez konieczności pisania kodu. Więcej informacji znajdziesz w artykule Informacje o testach Robo.
Test pętli gry: test, który wykorzystuje „tryb demonstracyjny” do symulowania działań gracza w aplikacjach do gier. To szybki i skalowalny sposób na sprawdzenie, czy gra działa prawidłowo. Jeśli zdecydujesz się przeprowadzić test pętli gry, możesz:
Pisz testy natywne dla Twojego silnika gry.
Unikaj pisania tego samego kodu dla różnych interfejsów lub platform testowych.
Opcjonalnie możesz utworzyć wiele pętli do uruchomienia w ramach jednego wykonania testu. Pętle możesz też porządkować za pomocą etykiet, aby śledzić je i ponownie uruchamiać wybrane z nich.
Instrukcje dotyczące przeprowadzania testu w Test Lab znajdziesz w artykule Przeprowadzanie testu pętli gry.
Krok 2. Wybierz narzędzie do przeprowadzenia testu
Do przeprowadzenia testu możesz użyć tych narzędzi:
FirebaseKonsola umożliwia przesyłanie aplikacji i rozpoczynanie testów z dowolnego miejsca. Instrukcje korzystania z tego narzędzia znajdziesz w artykule Testowanie w Firebasekonsoli.
Interfejs wiersza poleceń gcloud umożliwia interaktywne przeprowadzanie testów z wiersza poleceń. Nadaje się też do tworzenia skryptów w ramach zautomatyzowanego procesu kompilacji i testowania. Instrukcje korzystania z tego narzędzia znajdziesz w sekcji Testowanie za pomocą gcloud CLI.
Przed przetestowaniem aplikacji na rzeczywistych urządzeniach uruchom test lokalnie na symulatorze, aby sprawdzić, czy działa zgodnie z oczekiwaniami. Instrukcje znajdziesz w sekcji Testowanie lokalne.
Krok 3. Określ urządzenia testowe
Test Lab umożliwia przeprowadzanie testów aplikacji na wielu urządzeniach i modelach z iOS hostowanych w centrum danych Google. Więcej informacji znajdziesz w artykule Dostępne urządzenia.
Krok 4. Sprawdź wyniki testu
Niezależnie od tego, jak rozpoczniesz testy, wszystkie wyniki są zarządzane przez Test Lab i można je wyświetlać online.
Podsumowanie wyników testu jest automatycznie zapisywane i można je wyświetlić w Firebase konsoli. Zawiera on najbardziej istotne dane dotyczące testu, w tym filmy dotyczące konkretnych przypadków testowych, zrzuty ekranu, liczbę testów, które zakończyły się powodzeniem, niepowodzeniem lub dały niejednoznaczne wyniki, i inne informacje.
Nieprzetworzone wyniki testów zawierają logi testów i szczegóły awarii aplikacji i są automatycznie zapisywane w zasobniku Google Cloud. Jeśli określisz zasobnik, ponosisz koszt pamięci masowej. Jeśli nie określisz zasobnika, usługa Test Lab utworzy go za Ciebie bezpłatnie.
Więcej informacji znajdziesz w artykule Analizowanie Firebase Test Labwyników.
Czyszczenie urządzenia
Google bardzo poważnie traktuje bezpieczeństwo danych aplikacji. Po każdym teście postępujemy zgodnie ze sprawdzonymi metodami standardowymi w branży, aby usunąć dane aplikacji i zresetować ustawienia systemu na urządzeniach fizycznych. Dzięki temu są one gotowe do przeprowadzenia nowych testów. W przypadku urządzeń, na których możemy zainstalować niestandardowy obraz odzyskiwania, idziemy o krok dalej i instalujemy na nich oprogramowanie między kolejnymi testami.
W przypadku urządzeń wirtualnych używanych przez Test Lab instancje urządzeń są usuwane po użyciu, dzięki czemu każdy test korzysta z nowej instancji urządzenia wirtualnego.
Zezwalanie urządzeniom Test Lab na dostęp do prywatnych serwerów backendu
Niektóre aplikacje mobilne muszą komunikować się z prywatnymi usługami backendu, aby prawidłowo działać podczas testowania. Jeśli serwery backendu są chronione przez reguły zapory sieciowej, możesz zezwolić na dostęp do urządzeń fizycznych i wirtualnych Test Lab, otwierając trasy przez zaporę sieciową za pomocą bloków adresów IP podanych poniżej.
reklamy mobilne,
Test Lab zapewnia skalowalną infrastrukturę, która automatyzuje testowanie aplikacji. Niestety ta zdolność może być wykorzystywana w nadużycie przez szkodliwe aplikacje zaprojektowane do generowania fałszywych przychodów z reklam.
Aby ograniczyć ten problem:
Jeśli korzystasz z usług zewnętrznych dostawców reklam cyfrowych (np. sieci reklamowych lub platform DSP) lub z nimi współpracujesz, zalecamy używanie reklam testowych zamiast prawdziwych reklam podczas tworzenia i testowania aplikacji.
Jeśli w teście musisz użyć prawdziwych reklam, poinformuj dostawców reklam cyfrowych, z którymi współpracujesz, aby odfiltrowali przychody i cały ruch generowany przez Test Lab, korzystając z bloków adresów IP podanych poniżej. Nie musisz powiadamiać dostawców reklam należących do Google. Zrobi to za Ciebie Test Lab.
Adresy IP używane przez urządzenia Test Lab
Cały ruch w sieci generowany przez urządzenia Test Lab pochodzi z tych bloków adresów IP.
Możesz też uzyskać dostęp do tej listy za pomocą gcloud beta firebase test ip-blocks list
polecenia
w interfejsie gcloud CLI. Lista jest aktualizowana średnio raz w roku.
| Platforma i typ urządzenia | Blok adresów IP CIDR |
|---|---|
| urządzenia fizyczne z Androidem i iOS, urządzenia wirtualne Arm. |
70.32.128.0/19 (dodano w lutym 2022 r.) 108.177.6.0/23 108.177.18.192/26 (dodano w lutym 2022 r.) 108.177.29.64/27 (rozszerzono w lutym 2022 r.) 108.177.31.160/27 (dodano w lutym 2022 r.) 199.36.156.8/29 (dodano w lutym 2022 r.) 199.36.156.16/28 (dodano w lutym 2022 r.) 209.85.131.0/27 (dodano w lutym 2022 r.) 2001:4860:1008::/48 (dodano w lutym 2022 r.) 2001:4860:1018::/48 (dodano w lutym 2022 r.) 2001:4860:1019::/48 (dodano w lutym 2022 r.) 2001:4860:1020::/48 (dodano w lutym 2022 r.) 2001:4860:1022::/48 (dodano w lutym 2022 r.) 2001:4860:101d::/48 (dodano w październiku 2025 r.) 2001:4860:101e::/48 (dodano w październiku 2025 r.) 2001:4860:1031::/48 (dodano w październiku 2025 r.) 70.32.128.48/28 (dodano w kwietniu 2024 r.) 70.32.150.192/27 (dodano w 09.2025) 108.177.6.0/27 (dodano w IX 2025 r.) 108.177.24.160/27 (dodano w 09.2025) 108.177.29.0/27 (dodano w 09.2025) 108.177.25.128/27 (dodano w maju 2026 r.) 108.177.26.128/26 (dodano w maju 2026 r.) 108.177.29.192/26 (dodano w maju 2026 r.) 172.217.120.64/26 (dodano w maju 2026 r.) 172.217.120.128/26 (dodano w maju 2026 r.) 2001:4860:1037::/48 (dodano w maju 2026 r.) 2001:4860:1038::/48 (dodano w maju 2026 r.) 2001:4860:103a::/48 (dodano w maju 2026 r.) |
| Wirtualne urządzenia z Androidem (inne niż Arm) |
34.68.194.64/29 (dodano w listopadzie 2019 r.) 34.69.234.64/29 (dodano w listopadzie 2019 r.) 34.73.34.72/29 (dodano w listopadzie 2019 r.) 34.73.178.72/29 (dodano w listopadzie 2019 r.) 34.74.10.72/29 (dodano w lutym 2022 r.) 34.136.2.136/29 (dodano w lutym 2022 r.) 34.136.50.136/29 (dodano w lutym 2022 r.) 34.145.234.144/29 (dodano w lutym 2022 r.) 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 w lipcu 2019 r.) 35.245.243.240/29 (dodano w lutym 2022 r.) 199.192.115.0/30 199.192.115.8/30 199.192.115.16/29 |
| Blokady adresów IP urządzeń nie są już używane |
74.125.122.32/29 (usunięto w lutym 2022 r.) 216.239.44.24/29 (usunięto w lutym 2022 r.) |