Firebase is back at Google I/O on May 10! Register now

Zacznij korzystać z Firebase Test Lab na iOS

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Firebase Test Lab umożliwia testowanie jakości aplikacji na różnych urządzeniach i konfiguracjach. Ten przewodnik zawiera omówienie kluczowych koncepcji Test Lab, oferty iOS i instrukcje, jak rozpocząć testowanie.

Aby uzyskać informacje o przydziałach i planach cenowych laboratorium testowego, zobacz Użycie, przydziały i ceny .

Kluczowe pojęcia i terminy

Gdy przeprowadzasz test lub zestaw przypadków testowych na wybranych urządzeniach i konfiguracjach, Laboratorium testowe przeprowadza test Twojej aplikacji w partii, a następnie wyświetla wyniki jako macierz testów .

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

Urządzenie
Fizyczne lub wirtualne urządzenie (tylko Android), na którym uruchamiasz test, takie jak telefon, tablet lub urządzenie do noszenia. Urządzenia w macierzy testów są identyfikowane na podstawie modelu urządzenia, wersji systemu operacyjnego, orientacji ekranu i ustawień regionalnych (nazywanych również ustawieniami geograficznymi i językowymi).
Testuj, testuj wykonanie
Test (lub zestaw przypadków testowych) do uruchomienia na urządzeniu. Możesz uruchomić jeden test na każde urządzenie lub opcjonalnie podzielić test na fragmenty i uruchomić jego przypadki testowe na różnych urządzeniach.
Macierz testowa
Zawiera stany i wyniki testów dla wykonań testów. Jeśli jakiekolwiek wykonanie testu w macierzy zakończy się niepowodzeniem, cała macierz zakończy się niepowodzeniem.

Krok 1 : Przygotuj test do przesłania do Test Lab

Możesz przeprowadzić następujące testy za pomocą Test Lab. Należy pamiętać, że wszystkie typy testów mogą trwać maksymalnie 45 minut na urządzeniach fizycznych, a każdy nieprzechwycony wyjątek spowoduje niepowodzenie testu.

  • XCTest (w tym XCUITests) : Test jednostkowy, który napisałeś przy użyciu frameworka XCTest . Odwiedź stronę Utwórz XCTest , aby uzyskać instrukcje dotyczące modyfikowania XCTest do uruchomienia z Test Lab.

  • Game Loop test : test wykorzystujący „tryb demonstracyjny” do symulacji działań gracza w aplikacjach do gier. Jest to szybki i skalowalny sposób sprawdzenia, czy Twoja gra dobrze działa dla użytkowników. Gdy zdecydujesz się uruchomić test Game Loop, możesz:

    • Pisz 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 jednym wykonaniu testu. Możesz także organizować pętle za pomocą etykiet, aby móc je śledzić i ponownie uruchamiać określone pętle.

    Odwiedź stronę Przeprowadź test pętli gry , aby uzyskać instrukcje dotyczące przeprowadzania testu w Laboratorium testowym.

Krok 2 : Wybierz narzędzie do uruchomienia testu

Do przeprowadzenia testu możesz wybrać następujące narzędzia:

  • Konsola Firebase umożliwia przesyłanie aplikacji i inicjowanie testów z dowolnego miejsca. Zobacz Test z konsolą Firebase, aby uzyskać instrukcje dotyczące korzystania z tego narzędzia.

  • Interfejs wiersza poleceń gcloud (CLI) umożliwia interaktywne uruchamianie testów z wiersza poleceń, a także doskonale nadaje się do pisania skryptów w ramach zautomatyzowanego procesu tworzenia i testowania. Instrukcje dotyczące korzystania z tego narzędzia znajdziesz w artykule Testowanie za pomocą interfejsu wiersza polecenia gcloud .

  • Przed testowaniem na rzeczywistych urządzeniach uruchom test lokalnie na symulatorze, aby upewnić się, że zachowuje się zgodnie z przeznaczeniem. Aby uzyskać instrukcje, zobacz Testuj lokalnie .

Krok 3 : Określ urządzenia testujące

Dzięki Test Lab możesz przeprowadzić test swojej aplikacji na szerokiej gamie urządzeń z systemem iOS i modeli hostowanych w centrum danych Google. Aby dowiedzieć się więcej, zobacz Dostępne urządzenia.

Krok 4 : Przejrzyj wyniki testu

Niezależnie od tego, w jaki sposób zainicjujesz testy, wszystkie wyniki testów są zarządzane przez Test Lab i można je przeglądać online.

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

Surowe wyniki testów zawierają dzienniki testów i szczegóły awarii aplikacji i są automatycznie zapisywane w zasobniku Google Cloud. Jeśli określisz zasobnik, ponosisz odpowiedzialność za koszt magazynu. Jeśli nie określisz zasobnika, Test Lab utworzy go dla Ciebie bezpłatnie.

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

Oczyszczanie urządzenia

Google bardzo poważnie traktuje bezpieczeństwo danych aplikacji. Postępujemy zgodnie z najlepszymi praktykami branżowymi, aby usuwać dane aplikacji i resetować ustawienia systemowe urządzeń fizycznych po każdym uruchomieniu testu, aby upewnić się, że są one gotowe do uruchomienia nowych testów. W przypadku urządzeń, które możemy flashować za pomocą niestandardowego obrazu odzyskiwania, idziemy o krok dalej, flashując te urządzenia między przebiegami testowymi.

W przypadku urządzeń wirtualnych używanych przez laboratorium testowe instancje urządzeń są usuwane po ich użyciu, dzięki czemu każde uruchomienie testowe wykorzystuje nową instancję urządzenia wirtualnego.


Zezwalanie urządzeniom z laboratorium testowego na dostęp do prywatnych serwerów zaplecza

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

Reklama mobilna

Test Lab zapewnia skalowalną infrastrukturę, która automatyzuje testowanie aplikacji i niestety ta funkcja może być niewłaściwie wykorzystywana przez złośliwe aplikacje zaprojektowane do generowania fałszywych przychodów z reklam.

Aby złagodzić ten problem:

  • Jeśli korzystasz lub współpracujesz z zewnętrznymi dostawcami reklam cyfrowych (na przykład sieciami reklamowymi lub platformami DSP), zalecamy korzystanie z reklam testowych zamiast prawdziwych reklam podczas tworzenia i testowania aplikacji.

  • Jeśli musisz używać prawdziwych reklam w swoim teście, powiadom dostawców reklamy cyfrowej, z którymi współpracujesz, aby odfiltrowali przychody i cały odpowiedni ruch generowany przez Test Lab, korzystając z poniższych bloków adresów IP . Nie musisz powiadamiać dostawców reklam należących do Google; Test Lab zrobi to 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 . Możesz też uzyskać dostęp do tej listy 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 adresu IP CIDR
Fizyczne urządzenia z systemem Android i iOS

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

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 adresów IP urządzeń nie są już używane

74.125.122.32/29 (usunięto 02-2022)

216.239.44.24/29 (usunięto 02-2022)