Firebase Test Lab udostępnia 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: mogą je zintegrować i uruchamiać za pomocą Test Lab. Instrukcje dotyczące korzystania Test Lab w interfejsie Androida Studio, by utworzyć zestaw testów, uruchom z instrumentowanymi testami i przeglądać ich wyniki, patrz Przeprowadzaj testy w narzędziu Firebase Test Lab.
Robienie zrzutów ekranu
Test Lab umożliwia przechwytywanie zrzutów ekranu podczas uruchamiania 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ć aplikację w usłudze Test Lab.
Więcej informacji: Tworzenie testów UI za pomocą aplikacji Espresso Test Recorder
Zmień zachowanie testu instrumentowanego dla: Test Lab
Funkcja Test Lab udostępnia zmienną systemową, którą możesz dodać do metody testując je, dzięki czemu po uruchomieniu będą działać inaczej Test Lab 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 Test Lab.
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 za pomocą interfejsu Firebase Test Lab pozwala na uruchamianie zautomatyzowanych testów instrumentowanych na dużą skalę w Test Lab 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 Test Lab dla urządzeń zarządzanych przez Gradle: wykonaj instrukcje podane w artykule Optymalizacja uruchomień testów z inteligentnymi fragmentacja ,