Laboratorium Firebase zapewnia działającą w chmurze infrastrukturę do testowania Androida aplikacji i oferuje pełną integrację z Android Studio z instrumentowanymi testami i sprawdzaniem ich wyników.
Z tego przewodnika dowiesz się, jak modyfikować testy instrumentowane w Android Studio, aby: które można zintegrować i uruchomić z Laboratorium. Instrukcje dotyczące korzystania w narzędziu Laboratorium w interfejsie Androida Studio, aby utworzyć macierz testów, uruchomić z instrumentowanymi testami i przeglądać ich wyniki, patrz Przeprowadzaj testy w Laboratorium Firebase.
Robienie zrzutów ekranu
Laboratorium umożliwia robienie zrzutów ekranu podczas działania za pomocą testów instrumentalnych. Informacje o robieniu zrzutów ekranu znajdziesz w sekcji Dodaj bibliotekę zrzutów ekranu do projektu.
Tworzenie testów za pomocą narzędzia Espresso Test Recorder
Espresso Test Dyktafon pozwala tworzyć testy interfejsu aplikacji bez dowolnego kodu testowego. Możesz rejestrować interakcje z urządzeniem i dodawać asercji do weryfikacji elementów interfejsu, a w konkretnych zrzutach aplikacji. Espresso Dyktafon testuje następnie zapisane nagranie i automatycznie generuje odpowiedni test interfejsu Espresso, który możesz przeprowadzić, aby przetestować swoją aplikację w Laboratorium.
Więcej informacji: Tworzenie testów UI za pomocą aplikacji Espresso Test Recorder
Modyfikowanie zachowania testu instrumentowanego na potrzeby Laboratorium
Laboratorium udostępnia zmienną systemową, którą można dodać do testując je, dzięki czemu po uruchomieniu będą działać inaczej niż w przypadku uruchamiania ich na własnym urządzeniu testowym lub w emulatorze.
Poniższy przykładowy kod odczytuje właściwość systemową, firebase.test.lab
oraz
ustawia ciąg znaków, testLabSetting
na true
, jeśli test jest uruchomiony w Laboratorium.
Następnie wykorzystuje wartość tego ciągu do określenia, czy dodatkowe instrukcje
są wykonywane:
Kotlin+KTX
val testLabSetting = Settings.System.getString(contentResolver, "firebase.test.lab") if ("true" == testLabSetting) { // Do something when running in Test Lab // ... }
Java
String testLabSetting = Settings.System.getString(getContentResolver(), "firebase.test.lab"); if ("true".equals(testLabSetting)) { // Do something when running in Test Lab // ... }
Używanie urządzeń zarządzanych przez Gradle za pomocą wtyczki Firebase Test Lab
Urządzenia zarządzane przez Gradle w Laboratorium Firebase pozwala na przeprowadzanie na dużą skalę zautomatyzowanych testów instrumentowanych w Laboratorium na podstawie konfiguracji w plikach Gradle w Twoim projekcie.
Urządzenia zarządzane przez Gradle oferują również inteligentne fragmentowanie, które umożliwia rozpowszechnianie optymalnie sprawdza się we fragmentach na podstawie historii poprzednich testów. Z inteligentnym fragmentacja, fragmenty działają mniej więcej przez taki sam czas i zwracany jest test jak najszybciej. Inteligentne fragmentowanie umożliwia uruchamianie dużych zestawów testowych równoległe, dzięki czemu ta funkcja dobrze sprawdza się w procesach CI/CD.
Aby włączyć inteligentne fragmentowanie za pomocą wtyczki Laboratorium zarządzanych urządzeń zarządzanych przez Gradle: wykonaj instrukcje podane w artykule Optymalizowanie uruchomień testowych z inteligentnymi fragmentacja ,