Uruchamianie testów w chmurze przy użyciu Firebase Test Lab

  • Platforma testowa w chmurze umożliwiająca weryfikację aplikacji na rzeczywistych urządzeniach oraz urządzeniach z systemem iOS/Android bez konieczności korzystania z lokalnej infrastruktury fizycznej.
  • Umiejętność uruchamiania testów instrumentacyjnych, Robo i XCTest przy użyciu konfigurowalnych macierzy konfiguracji.
  • Natywna integracja z Android Studio i przepływami CI/CD w celu zautomatyzowania wykrywania błędów przed wdrożeniem.
  • Szczegółowa analiza wyników z wykorzystaniem dzienników, zrzutów ekranu i filmów instruktażowych w celu optymalizacji jakości oprogramowania.

Uruchamianie testów w chmurze przy użyciu Firebase Test Lab

Kiedy rozpoczynamy tworzenie aplikacji mobilnej , jednym z największych wyzwań jest zapewnienie bezproblemowego działania na każdym urządzeniu. Niełatwo jest zmusić prawdziwych ludzi do testowania każdego aspektu aplikacji, a co dopiero dysponować szeroką gamą telefonów wszystkich marek i modeli. Właśnie tutaj pojawia się Firebase Test Lab , rozwiązanie Google, które pozwala nam zmniejszyć obciążenie pracą poprzez delegowanie testów do chmury.

Mówiąc najprościej, mówimy o środowisku, w którym możemy uruchomić naszą aplikację na szerokiej gamie urządzeń fizycznych i wirtualnych, bez konieczności ich zakupu ani przechowywania w biurze. To idealne narzędzie dla osób poszukujących stabilności i niezawodności, pozwalające wykrywać krytyczne błędy, zanim dotrą one do użytkowników końcowych, a jednocześnie w niezwykły sposób optymalizować koszty i czas rozwoju.

Czym właściwie jest Firebase Test Lab i do czego służy?

Platforma ta to w zasadzie laboratorium urządzeń hostowane w centrach danych Google. Jej głównym celem jest umożliwienie programistom łatwej oceny zgodności i wydajności ich aplikacji na Androida i iOS. Wykorzystując prawdziwy sprzęt, unika ona pozornych błędów, które pojawiają się tylko w przypadku określonych konfiguracji ekranu, regionów lub wersji systemu operacyjnego.

Diagnostyka i śledzenie błędów za pomocą Firebase Crashlytics
Powiązany artykuł:
Diagnostyka i śledzenie błędów za pomocą Firebase Crashlytics

Dla porównania, firmy takie jak American Express zdołały obniżyć koszty testowania o 50%, przenosząc testy ciągłej integracji do środowiska wirtualnego, co pozwoliło ich inżynierom skupić się na tworzeniu nowych funkcji zamiast zmagać się z kablami i urządzeniami fizycznymi. Należy jednak pamiętać, że to narzędzie nie jest przeznaczone do testowania obciążenia na serwerach zaplecza, lecz do walidacji działania aplikacji po stronie klienta.

Rodzaje testów, które możesz przeprowadzić

W zależności od tego, co chcemy przetestować, Test Lab oferuje różne ścieżki. Z jednej strony, istnieją testy instrumentacyjne dla Androida , które można uzupełnić o automatyzację testów interfejsu użytkownika za pomocą Espresso . Wymagają one predefiniowanego kodu do walidacji określonych funkcji. Z drugiej strony, mamy test Robo , który jest fantastyczny, ponieważ nie wymaga napisania ani jednej linijki kodu; narzędzie automatycznie skanuje aplikację w celu wykrycia potencjalnych błędów.

Przechodząc do ekosystemu Apple, wprowadziliśmy obsługę XCTest dla systemu iOS , zapewniając spójną jakość na obu platformach. Dodatkowo, dla twórców gier dostępny jest Game Loop , kompatybilny zarówno z systemem iOS, jak i Androidem. Po wybraniu preferowanej metody wystarczy spakować aplikację i przesłać ją do konsoli Firebase, aby rozpocząć pracę.

Przepływ pracy krok po kroku i wdrożenie

Konfiguracja testowa

Aby to wszystko uruchomić, pierwszym krokiem jest przygotowanie aplikacji. Po przesłaniu jej do Firebase musimy zdefiniować macierz testów . Obejmuje to wybór zestawu urządzeń, wersji systemu operacyjnego, orientacji ekranu i ustawień regionalnych, które chcemy przetestować. To jak stworzenie rzeczywistego scenariusza, w którym nasza aplikacja będzie musiała przetrwać.

narzędzia do tworzenia aplikacji na Androida
Powiązany artykuł:
Najlepszy przewodnik: narzędzia do tworzenia aplikacji na Androida od podstaw (natywne, wieloplatformowe, bez kodu i AI)

Jeśli wolisz pozostać w swoim środowisku pracy, integracja z Android Studio jest bezproblemowa. W menu ustawień uruchamiania możesz dodać nową konfigurację „Android Instrumented Tests” i w sekcji Cel wybrać macierz urządzeń Firebase Test Lab . Wystarczy uwierzytelnić się za pomocą konta Google i wybrać powiązany projekt, aby uruchomić testy bezpośrednio z IDE.

Dla tych, którzy chcą przenieść automatyzację na wyższy poziom, istnieje możliwość integracji Test Lab z procesami CI/CD, takimi jak GitHub Actions, GitLab CI czy Jenkins. Korzystając z interfejsu wiersza poleceń gcloud lub Firebase, można wywoływać polecenia, aby automatycznie uruchamiać testy za każdym razem, gdy zostanie opublikowany nowy kod, gwarantując, że żadna wersja z błędami krytycznymi nie trafi do produkcji.

Analiza wyników i optymalizacja jakości

Po zakończeniu testów (co może zająć kilka minut, w zależności od rozmiaru tablicy), Firebase dostarcza nam szczegółowy i kompleksowy raport . To nie tylko proste „zaliczony” lub „niezaliczony”; otrzymujemy pełne logi, zrzuty ekranu każdego kroku i, co najważniejsze, nagrania wideo z wykonania . Jest to nieocenione narzędzie do odtwarzania błędów, których w przeciwnym razie nie dałoby się wyśledzić.

Analizując wyniki, powinniśmy przyjrzeć się śladowi stosu w logach, aby dokładnie określić linię awarii i wykorzystać nagrania wideo, aby zrozumieć przepływ użytkownika, który spowodował błąd. Monitorowanie metryk, takich jak wskaźnik awarii i częstotliwość występowania incydentów, pozwala nam podejmować decyzje oparte na danych, nadając priorytet poprawkom, które wpływają na największą liczbę użytkowników.

Wydajność Firebase
Powiązany artykuł:
Kompletny przewodnik po analizie zachowań użytkowników z Firebase Analytics

W Android Studio okno Uruchom pozwala nam porównać wartość oczekiwaną z rzeczywistą w nieudanych testach, co ułatwia natychmiastowe poprawki błędów. Co więcej, możemy skorzystać z narzędzi do pokrycia kodu , aby dokładnie określić, jaki procent naszej logiki został sprawdzony, upewniając się, że nie pozostawiliśmy żadnych niedociągnięć w architekturze aplikacji.


Dodaj jako preferowane źródło w Google