Firebase Test Lab umożliwia testowanie aplikacji na różnych urządzeniach konfiguracji. Przewodnik wprowadzający zawiera ścieżkę implementacji, które warto poznać, a także zapoznać się z ofertą aplikacji Test Lab na Androida.
Więcej informacji o limitach i abonamentach usługi Test Lab znajdziesz w artykule Wykorzystanie, limity i ceny.
Najważniejsze pojęcia
Gdy uruchomisz test lub zbiór przypadków testowych na urządzeniach i konfiguracjach wybrany przez Ciebie, Test Lab uruchamia test aplikacji zbiorczo, a potem wyświetla wyniki w postaci macierzy testów.
Urządzenia × wykonania testu = tabela 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).
- Test, wykonanie testu
- 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.
Krok 1. Przygotuj test do przesłania do Test Lab
Dostępne typy testów
Te testy możesz przeprowadzić za pomocą Test Lab. Pamiętaj, że wszystkie typy testów ograniczone do 45 minut na urządzeniach fizycznych i 60 minut na urządzeniach wirtualnych urządzenia. Każde nieprzechwycone wyjątki spowodują niepowodzenie testu.
Test z instrumentacją lub test jednostkowy instrumentów: Test, który napisałeś za pomocą Espresso lub UI Automator zasad. Za pomocą tego testu możesz wyraźnie twierdzić, że stanu aplikacji, aby zweryfikować jej poprawność za pomocą AndroidJUnitRunnerAPIs.
Odwiedź Przeprowadzanie testu narzędzi aby dowiedzieć się, jak przygotować test do uruchomienia w: Test Lab.
Zapoznaj się z Dokumentacja dla deweloperów aplikacji na Androida , aby dowiedzieć się, jak utworzyć test z instrumentacją.
Test Robo: automatyczny test, który analizuje interfejsu aplikacji, a potem metodycznie eksploruje ją, symulując działania użytkownika, bez konieczności pisania kodu. Odwiedź Więcej informacji znajdziesz w artykule o testach Robo.
Test pętli gry: test, który wykorzystuje „tryb demonstracyjny” do symulowania działań gracza w aplikacjach z grami. To szybki i skalowalny sposób aby sprawdzić, czy gra działa dobrze dla użytkowników. Jeśli zdecydujesz się uruchomić kampanię Test pętli gry możesz:
Pisanie testów natywnych w silniku gry
Unikaj pisania tego samego kodu dla różnych UI i testowania platformy
Opcjonalnie utwórz wiele pętli do uruchomienia w ramach pojedynczego testu (więcej informacji znajdziesz w artykule Informacje o testach pętli gry). Możesz też porządkować pętle za pomocą etykiet, aby móc je śledzić i ponowić.
Instrukcje przeprowadzania tego testu znajdziesz w sekcji Przeprowadzanie testu pętli gry. dzięki funkcji Test Lab.
Narzędzia do przeprowadzania testu
Aby przeprowadzić test, możesz wybrać te narzędzia:
Zalecany dla nowych użytkowników: konsola Firebase umożliwia przesyłanie aplikacji i inicjowanie testów w przeglądarce. Zobacz Przetestuj za pomocą konsoli Firebase, aby uzyskać instrukcje dotyczące za pomocą tego narzędzia.
Integracja z Androidem Studio umożliwia testowanie bez opuszczania środowiska programistycznego. Zobacz Testowanie w Android Studio. .
Interfejs wiersza poleceń gcloud umożliwia przeprowadzanie testów z wiersza poleceń. Dobrze się też sprawdza w tworzeniu skryptów są częścią zautomatyzowanego procesu kompilacji i testowania. Instrukcje dotyczące uruchamiania testów za pomocą tego narzędzia znajdziesz w artykule Testowanie za pomocą interfejsu wiersza poleceń gcloud.
Możesz też bezpłatnie przetestować aplikację za pomocą Test Lab, gdy prześlesz opublikuj pliki APK aplikacji w Sklepie Play w wersji alfa lub wersji beta. Więcej informacji: Używanie raportów przed opublikowaniem do wykrywania problemów oraz testy Robo.
Krok 2. Wybierz urządzenie testowe
Test Lab obsługuje testowanie na różnych modelach urządzeń z Androidem zainstalowanych i uruchamianych w centrum danych Google. Testowanie włączone urządzenia w aplikacji Test Lab pomagają wykrywać problemy, które mogą nie występować podczas testowania za pomocą emulatorów dostępnych w Android Studio. Więcej informacji znajdziesz w artykule Dostępne urządzenia.
Krok 3. Sprawdź wyniki testu
Niezależnie od sposobu rozpoczęcia testów, wyniki wszystkich testów są zarządzane przez Test Lab i można wyświetlać online.
Podsumowanie wyników testu to są zapisywane automatycznie i można je wyświetlić w konsoli Firebase. Zawiera najbardziej odpowiednie dane do testu, w tym filmy dotyczące konkretnego przypadku testowego, liczbę zrzutów ekranu, liczbę testów, które zaliczone, niezaliczone lub które uzyskały niestabilne wyniki; i innych.
Nieprzetworzone wyniki testów zawierają dzienniki testowe i szczegóły błędów aplikacji. automatycznie zapisane w zasobniku Google Cloud. Jeśli określisz zasobnik, odpowiedzialnego za koszty pamięci masowej. Jeśli nie określisz puli, Test Lab utworzy ją za Ciebie bezpłatnie.
Więcej informacji znajdziesz w sekcji Analizowanie wyników Firebase Test Lab.
Gdy rozpoczniesz test w Android Studio, możesz też sprawdzić wyniki testów w swoim środowisku programistycznym.
Czyszczenie urządzenia
Google bardzo poważnie traktuje bezpieczeństwo danych w aplikacjach. Śledzimy sprawdzone metody branżowe dotyczące usuwania danych aplikacji i resetowania ustawień systemu. dla urządzeń fizycznych po każdym teście, aby upewnić się, nowych testów. Dotyczy urządzeń, które można zainstalować z wykorzystaniem niestandardowego odzyskiwania idziemy o krok dalej, migając między urządzeniami między testami.
W przypadku urządzeń wirtualnych używanych przez grupę Test Lab instancje urządzeń są usuwane po są używane, aby w każdym teście używana była nowa instancja urządzenia wirtualnego.
Test Lab i Usługi Google Play
Test Lab urządzeń zwykle ma najnowszą wersję Google Play pakietu SDK usług, ale niektóre z nich mogą zostać zaktualizowane po kilku dniach pakietu SDK. Pamiętaj, że możesz napotkać problemy ze zgodnością w przypadku niektórych urządzeniach.
Zezwalam urządzeniom testowym na dostęp do prywatnych serwerów backendu
Niektóre aplikacje mobilne muszą komunikować się z prywatnymi usługami backendu podczas testowania. Jeśli serwery backendu są chronione przez zaporę sieciową reguł, możesz zezwolić na dostęp do urządzeń fizycznych i wirtualnych, których używa Test Lab, przez w blokach adresów IP, aby otwierać trasy zapory sieciowej.
Reklama mobilna
Test Lab zapewnia skalowalną infrastrukturę, która automatyzuje testowanie aplikacji. Niestety ta funkcja może być niewłaściwie wykorzystywana przez złośliwe aplikacje, które generują fałszywe przychody z reklam.
Aby rozwiązać ten problem:
Jeśli korzystasz z zewnętrznych dostawców reklam cyfrowych lub współpracujesz z nimi (np. sieci reklamowe lub platformy DSP), zalecamy używanie reklam testowych zamiast prawdziwych reklam podczas tworzenia aplikacji i testowanie.
Jeśli w ramach testu musisz używać prawdziwych reklam, poinformuj współpracujących z Tobą dostawców reklam cyfrowych, aby odfiltrowali przychody i wszystkie odpowiednie dane dotyczące ruchu generowanego z Test Lab, korzystając z bloków adresów IP wymienionych poniżej. Nie potrzebujesz powiadamianie dostawców reklam należących do Google; Test Lab zajmie się tym za Ciebie.
Adresy IP używane przez Test Lab urządzeń
Cały ruch w sieci generowany przez Test Lab urządzeń pochodzi z
obserwujesz
Bloki adresów IP.
Możesz też uzyskać dostęp do tej listy przy użyciu
gcloud beta firebase test ip-blocks list
command.
w 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 oraz urządzenia wirtualne z procesorami 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 (rozwinięty: 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 2022-02) 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-2024) |
Urządzenia wirtualne z Androidem (bez urządzenia pamięci) |
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 2.02.2022) 34.136.2.136/29 (dodano 02.2022) 34.136.50.136/29 (dodano 02.2022) 34.145.234.144/29 (dodano 2022-02) 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 02.2022) 199.192.115.0/30 199.192.115.8/30 199.192.115.16/29 |
Blokady adresów IP urządzenia nie są już używane |
74.125.122.32/29 (usunięto 02.2022) 216.239.44.24/29 (usunięto 02.2022) |