Pierwsze kroki z Laboratorium Firebase na iOS

Laboratorium Firebase umożliwia testowanie jakości aplikacji na różnych urządzeniach i w różnych konfiguracjach. Ten przewodnik zawiera omówienie głównych koncepcji Laboratorium, oferty na iOS oraz instrukcji rozpoczęcia testowania.

Informacje na temat limitów i abonamentów Laboratorium znajdziesz w artykule na temat użycia, limitów i cen.

Kluczowe pojęcia i terminy

Gdy przeprowadzasz test lub zbiór przypadków testowych w odniesieniu do wybranych urządzeń i konfiguracji, Laboratorium testuje Twoją aplikację partiami, a potem wyświetla wyniki w formie tabeli testów.

Urządzenia × wykonania testów = Macierz testów

Urządzenie,
Urządzenie fizyczne lub wirtualne (tylko z Androidem), na którym przeprowadzasz 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 regionu (nazywanego też ustawieniami geograficznymi i językowymi).
Testowanie i wykonywanie testu
Test (lub zbiór przypadków testowych) do uruchomienia na urządzeniu. Możesz przeprowadzić 1 test na urządzenie lub opcjonalnie podzielić test na fragmenty i uruchomić jego przypadki testowe na różnych urządzeniach.
Zestaw testów
Zawiera stany i wyniki testów wykonanych testu. Jeśli którekolwiek wykonanie testu w tablicy nie powiedzie się, cała macierz kończy się niepowodzeniem.

Krok 1. Przygotuj test do przesłania do Laboratorium

W Laboratorium możesz uruchomić opisane poniżej testy. Pamiętaj, że na urządzeniach fizycznych wszystkie typy testów mogą trwać maksymalnie 45 minut, a każdy niewykryty wyjątek spowoduje błąd testu.

  • XCTest (w tym XCUITests): test jednostkowy napisany za pomocą platformy XCTest. Instrukcje zmodyfikowania XCTest, które można uruchomić w Laboratorium, znajdziesz w sekcji Create an XCTest (Tworzenie XCTest).

  • Test pętli gry: test wykorzystujący „tryb demonstracyjny” do symulowania działań graczy w grach mobilnych. To szybki i skalowalny sposób sprawdzania, czy gra działa dobrze. Jeśli zdecydujesz się uruchomić test pętli gry, możesz:

    • Napisz testy natywne dla silnika gry.

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

    • Opcjonalnie utwórz wiele pętli, które będą uruchamiane w jednym wykonaniu testu. Możesz też uporządkować pętle przy użyciu etykiet, by je śledzić i uruchamiać określone pętle.

    Instrukcje przeprowadzania testu w Laboratorium znajdziesz w artykule Uruchamianie testu pętli gry.

Krok 2. Wybierz narzędzie do przeprowadzenia testu

Możesz wybrać następujące narzędzia do przeprowadzenia testu:

  • Konsola Firebase umożliwia przesyłanie aplikacji i rozpoczynanie testowania z dowolnego miejsca. Instrukcje korzystania z tego narzędzia znajdziesz w sekcji Testowanie za pomocą konsoli Firebase.

  • Interfejs wiersza poleceń gcloud (CLI) umożliwia interaktywne przeprowadzanie testów z poziomu wiersza poleceń. Sprawdza się też w przypadku tworzenia skryptów w ramach zautomatyzowanego procesu kompilacji i testowania. Instrukcje korzystania z tego narzędzia znajdziesz w sekcji Testowanie za pomocą interfejsu wiersza poleceń gcloud.

  • Zanim przeprowadzisz testy na rzeczywistych urządzeniach, przeprowadź test lokalnie na symulatorze, aby sprawdzić, czy wszystko działa zgodnie z oczekiwaniami. Instrukcje znajdziesz w sekcji Testowanie lokalnie.

Krok 3. Określ urządzenia testowe

Dzięki Laboratorium możesz przeprowadzić testy swojej aplikacji na różnych urządzeniach z iOS i w różnych modelach hostowanych w centrum danych Google. Więcej informacji znajdziesz w sekcji Dostępne urządzenia.

Krok 4. Sprawdź wyniki testu

Niezależnie od sposobu rozpoczęcia testów wszystkie ich wyniki są zarządzane przez Laboratorium i można je wyświetlać online.

Podsumowanie wyników testu jest przechowywane automatycznie i można je wyświetlić w konsoli Firebase. Zawiera on najważniejsze dane dotyczące testu, m.in. filmy dotyczące konkretnego przypadku testowego, zrzuty ekranu, liczbę zaliczonych lub niezaliczonych testów oraz wyniki niepewne.

Nieprzetworzone wyniki testu zawierają logi testowe i szczegóły dotyczące błędów aplikacji oraz są automatycznie zapisywane w zasobniku Google Cloud. Jeśli określisz zasobnik, ponosisz odpowiedzialność za koszty miejsca na dane. Jeśli nie określisz zasobnika, Laboratorium utworzy go bezpłatnie.

Więcej informacji znajdziesz w artykule Analizowanie wyników Laboratorium Firebase.

Czyszczenie urządzenia

Google bardzo poważnie traktuje bezpieczeństwo danych Twojej aplikacji. Postępujemy zgodnie ze sprawdzonymi metodami branżowymi, aby po każdym uruchomieniu testów usuwać dane aplikacji i resetować ustawienia systemu dla urządzeń fizycznych, aby były gotowe do nowych testów. W przypadku urządzeń, które mogą zostać uzupełnione za pomocą niestandardowego obrazu przywracania, przechodzimy o krok dalej, czyli w czasie między testami wykorzystujemy dane urządzenia.

W przypadku urządzeń wirtualnych używanych przez Laboratorium instancje urządzeń są usuwane po ich użyciu, aby w każdym przebiegu testu była używana nowa instancja urządzenia wirtualnego.


Zezwalanie urządzeniom z Laboratorium na dostęp do prywatnych serwerów backendu

Niektóre aplikacje mobilne muszą komunikować się z prywatnymi usługami backendu, aby działać prawidłowo podczas testów. Jeśli Twoje serwery backendu są chronione przez reguły zapory sieciowej, możesz zezwolić na dostęp do urządzeń fizycznych i wirtualnych Laboratorium, korzystając z bloków adresów IP poniżej do otwierania tras przez zaporę sieciową.

Reklama mobilna

Laboratorium udostępnia skalowalną infrastrukturę, która automatyzuje testowanie aplikacji. Niestety, ta funkcja może być niewłaściwie wykorzystywana przez złośliwe aplikacje służące do generowania fałszywych przychodów z reklam.

Aby ograniczyć ten problem:

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

  • Jeśli w teście musisz użyć prawdziwych reklam, powiadom dostawców reklam cyfrowych, z którymi współpracujesz w celu odfiltrowywania przychodów i całego powiązanego ruchu generowanego przez Laboratorium, korzystając z blokad adresów IP poniżej. Nie musisz powiadamiać dostawców reklam należących do Google, ponieważ zrobi to za Ciebie Laboratorium.

Adresy IP używane przez urządzenia z Laboratorium

Cały ruch w sieci generowany przez urządzenia w Laboratorium pochodzi z tych bloków adresów IP. Dostęp do tej listy możesz też uzyskać za pomocą gcloud beta firebase test ip-blocks list polecenia w interfejsie wiersza poleceń gcloud. Lista jest aktualizowana średnio raz w roku.

Platforma i typ urządzenia Blok adresów IP CIDR
fizyczne urządzenia z Androidem 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 (rozszerzono 2–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)

70.32.128.48/28 (dodano 04.04.2024)

Wirtualne urządzenia z Androidem (inne niż uzbrojone)

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

Blokady adresów IP urządzeń nie są już używane

74.125.122.32/29 (usunięto 2–2022 r.)

216.239.44.24/29 (usunięto 2–2022 r.)