Zacznij testować urządzenia wirtualne z Androidem

Ten dokument opisuje usługi antenowe w usłudze Test Lab, w tym ich zalety i znane ograniczenia. Udostępniamy też rekomendacje dotyczące testowania aplikacji na różnych etapach cyklu życia. Test Lab AVD są podobne do AVD dla Androida w Studio, ale są zoptymalizowane pod kątem wydajności dzięki testowaniu w chmurze, więc występują między nimi pewne różnice.

Test Lab AVD z sufiksem .arm lub (Arm) to zaawansowane emulatory, które zapewniają te korzyści:

  • Szybsze wykonywanie testów

  • rozmiary i gęstości ekranu zgodne z modelami AVD w Android Studio, aby zapewnić spójność;

  • Grafika przyspieszona przez GPU

W tabeli poniżej opisano zalety korzystania z urządzeń wirtualnych:

Korzyść Opis Przypadki użycia
Wysoka dostępność Testy przeprowadzane na urządzeniach wirtualnych są szybsze i dają szybsze wyniki. Urządzenia wirtualne są tworzone na żądanie, więc testy zaczynają się niemal natychmiast, co pozwala szybko zweryfikować aplikację. testowanie niewielkich aktualizacji aplikacji lub regresji.
dłuższy czas trwania testu, Urządzenia wirtualne obsługują testy o długości do 60 minut. Testy na urządzeniach fizycznych są ograniczone do czasu trwania testu 45 minut na każdym urządzeniu. Przeprowadzanie dłuższych testów
Niższe koszty Urządzenia wirtualne są płatne w wysokości 1 USD za godzinę korzystania z każdego urządzenia wirtualnego używanego do testowania aplikacji. testowanie codzienne za pomocą systemów ciągłej integracji lub przed sprawdzeniem kodu; Więcej informacji znajdziesz w artykule Poziomy wykorzystania, limity i ceny usługi Test Lab.

Testowanie aplikacji na urządzeniach wirtualnych

Aplikację możesz testować na urządzeniach wirtualnych w taki sam sposób jak na urządzeniach fizycznych. Podczas konfigurowania macierzy testów możesz wybrać urządzenia wirtualne do testów. Więcej informacji o uruchamianiu testów za pomocą Test Lab znajdziesz w artykule Zaczynaj testować aplikacje na Androida za pomocą Firebase Test Lab.

Wyświetlanie obsługiwanych modeli i interfejsów API

Aby wyświetlić modele i interfejsy AVD obsługiwane przez Test Lab, uruchom to polecenie:

gcloud firebase test android models list --filter=virtual

Sprawdzone metody testowania aplikacji

Urządzenia wirtualne zwiększają zakres opcji podczas testowania aplikacji za pomocą Test Lab. Zalecamy stosowanie tych sprawdzonych metod testowania aplikacji na różnych etapach cyklu życia aplikacji:

Użyj emulatora Android Studio lub podłączonego urządzenia fizycznego.

Podczas tworzenia aplikacji użyj emulatora Android Studio lub podłączonego fizycznego urządzenia, aby sprawdzić każdą kompilację pod kątem wstępnej walidacji. Jeśli masz testy instrumentacji, możesz je też uruchomić w Android Studio na urządzeniach fizycznych lub wirtualnych udostępnionych przez Test Lab.

podczas pracy nad projektami współdzielonymi używać systemów CI do weryfikacji każdej zmiany kodu;

Jeśli pracujesz nad dużym projektem lub współtworzysz projekty udostępniane w GitHub lub podobnej witrynie, zalecamy korzystanie z systemów ciągłej integracji (CI). Testuj aplikacje na urządzeniach wirtualnych za każdym razem, gdy system CI jest uruchamiany, lub przed każdą prośbą o przechwycenie. Więcej informacji o korzystaniu z Test Lab w systemach CI znajdziesz w artykule Korzystanie z Test Lab na potrzeby Androida w systemach ciągłej integracji.

Przed opublikowaniem istotnych aktualizacji aplikacji przetestuj ją na urządzeniach fizycznych za pomocą Test Lab.

Zanim opublikujesz aktualizacje aplikacji ze znaczącymi zmianami w interfejsie i funkcjonalności, zalecamy przetestowanie aplikacji na fizycznych urządzeniach za pomocą Test Lab. Dzięki temu aplikacja będzie stabilna i wydajna na wielu popularnych urządzeniach fizycznych. Testowanie na urządzeniach fizycznych zapewnia również pokrycie testami wszystkich funkcji aplikacji, które korzystają z funkcji urządzeń fizycznych, które nie są symulowane przez urządzenia wirtualne. Więcej informacji o tych funkcjach znajdziesz w artykule Znane ograniczenia.

Aktualizacje urządzenia wirtualnego

Zespół Androida okresowo dodaje nowe obrazy wirtualnych urządzeń, wycofuje stare i aktualizuje istniejące. Stosujemy te aktualizacje do naszych obrazów wirtualnych urządzeń, aby zapewnić Ci możliwość testowania najnowszych wersji Androida, które odpowiadają wrażeniam użytkowników.

W rzadkich przypadkach te aktualizacje mogą spowodować nieoczekiwane niepowodzenie testów. Jeśli pojawi się aktualizacja, która może spowodować problemy, Test Lab poinformuje o tym w informacjach o wersji. Zalecamy używanie ramek testowych, np. Espresso, które są odporne na te zmiany. Jeśli nie jest to możliwe, zalecamy kierowanie na urządzenia wirtualne z procesorami ARM, które są aktualizowane rzadziej.

Znane ograniczenia

Niektóre funkcje urządzeń fizycznych nie są obecnie symulowane przez urządzenia wirtualne lub są symulowane z pewnymi ograniczeniami. W tabeli poniżej znajdziesz podsumowanie funkcji, które są obecnie niedostępne na urządzeniach wirtualnych lub są dostępne z pewnymi ograniczeniami:

Funkcja Szczegóły
Interfejsy binarne aplikacji (ABI) Nie wszystkie urządzenia obsługują wszystkie ABI. Jeśli tworzysz aplikację za pomocą NDK na Androida, pamiętaj, aby wygenerować kod dla interfejsów ABI obsługiwanych przez urządzenia docelowe (patrz Dostępne urządzeniaTest Lab). Więcej informacji o zarządzaniu interfejsami ABI znajdziesz w artykule Interfejsy ABI na Androida.

Uwaga: jeśli test w matryce testów jest oznaczony jako nieprawidłowy, może to być spowodowane tym, że aplikacja jest zależna od kodu natywnego, którego nie obsługuje ABI urządzenia.

Wydajność grafiki Urządzenia wirtualne Nexus i Pixel korzystają z renderowania grafiki za pomocą oprogramowania. Aplikacje wymagające dużej ilości grafiki mogą działać wolniej. Jeśli Twoja aplikacja jest obciążająca dla grafiki, rozważ użycie SmallPhone.arm, MediumPhone.arm lub urządzeń fizycznych.
Interfejsy API grafiki OpenGL ES 3.x nie jest obsługiwany na urządzeniach z poziomem interfejsu API niższym niż 29. Nowsze urządzenia nie są w 100% zgodne z interfejsami API OpenGL/Vulkan, dlatego możesz zauważyć niewielkie różnice w grafice.
Aplikacja Sklep Google Play Aplikacja Sklep Google Play nie jest obsługiwana na urządzeniach wirtualnych z procesorami ARM.
Funkcja rzeczywistości rozszerzonej (AR) Testowanie funkcji rzeczywistości rozszerzonej nie jest obsługiwane na urządzeniach wirtualnych.
Starsze poziomy interfejsu API Test Lab Urządzenia wirtualne z procesorem ARM nie obsługują poziomów interfejsu API poniżej 26.

Dalsze kroki