Usługa App Testing to usługa generowania, zarządzania i wykonywania testów o party zapoczątkowanej przez Gemini w Firebase. Określasz cele testu w języku naturalnym, a agent wykorzystuje AI do zrozumienia aplikacji i poruszania się po niej, symulowania interakcji z użytkownikiem oraz dostarczania szczegółowych wyników testu.
Jak agent Testowanie aplikacji wykorzystuje Twoje dane
Jeśli nie używasz innych usług Firebase, musisz tylko utworzyć projekt i zarejestrować aplikację. Nie musisz dodawać do niej żadnych pakietów SDK. Jeśli jednak w przyszłości zdecydujesz się na korzystanie z dodatkowych usług, wykonaj wszystkie czynności opisane w artykule Dodawanie Firebase za pomocą konsoli Firebase.
Gdy chcesz udostępnić wersję przedpremierową aplikacji testerom, skompiluj plik APK lub AAB w ramach zwykłego procesu i prześlij go do usługi App Distribution w konsoli Firebase.
Plik APK musi być podpisany kluczem debugowania lub kluczem podpisywania aplikacji.
Tworzenie testu
Aby przeprowadzić testy kierowane przez AI, agent Testowania aplikacji korzysta z przypadków testowych w języku naturalnym do przeprowadzania testów aplikacji.
Każdy przypadek testowy jest podzielony na kroki, które będą wykonywane kolejno.
Kroki umożliwiają podzielenie przypadku testowego na etapy, z których każdy ma własne kryteria powodzenia. Podczas każdego kroku agent może wykonywać wiele działań.
Aby utworzyć test, otwórz stronę App Distribution w konsoli Firebase i wykonaj te czynności:
Na karcie Przypadki testowe kliknij Nowy przypadek testowy. Jeśli nie chcesz tworzyć własnego przypadku testowego, możesz zmodyfikować lub użyć podanego przykładowego przypadku testowego.
W oknie Dodaj przypadek testowy nadaj mu nazwę. Służy do identyfikacji testu, ale jest ignorowany przez agenta.
Rozważ podzielenie testu na kilka kroków, klikając przycisk Dodaj kolejny krok.
Dla każdego etapu podaj cel opisujący, co ma zrobić agent testowania aplikacji na tym etapie.
(Opcjonalnie) Dodaj wskazówkę, aby przekazać dodatkowe informacje, które pomogą inspektorowi zrozumieć aplikację i poruszać się po niej na tym etapie.
(Opcjonalnie) Dodaj kryteria sukcesu, aby pomóc pracownikowi zespołu testowania aplikacji określić, kiedy dany krok został pomyślnie ukończony.
Gdy skończysz dostosowywać test, kliknij Zapisz.
Przykładowy przypadek testowy
Poniżej znajdziesz przykładowy sposób tworzenia przypadku testowego za pomocą agenta Testowania aplikacji:
Testowanie strony głównej
Tytuł testowy
Wczytywanie strony głównej
Cel
Załaduj stronę główną
Podpowiedź
Przechodzenie przez ekrany wdrożeniowe. Zamknij wyskakujące okienka. Nie loguj się.
Kryteria sukcesu
Główna strona aplikacji jest widoczna na ekranie, wszystkie obrazy zostały załadowane, a nie wyświetlają się żadne błędy.
Uruchom test
Agent testowania aplikacji umożliwia uruchamianie w konsoli testów kierowanych przez AI. Aby to zrobić, kliknij przycisk Uruchom testy na stronie Wersje lub Przypadki testowe.
Otworzy się ekran dostosowywania agenta Testowania aplikacji, na którym możesz wybrać co najmniej 1 z dotychczasowych przypadków testowych do wykonania przez agenta. Możesz też wybrać urządzenia, na których chcesz przeprowadzić test, oraz zdecydować, czy chcesz podać dane logowania.
Możesz też wybrać test losowego indeksowania, zmieniając typ testu.
Testy losowego indeksowania korzystają z funkcji Automated Tester.
Wyniki testów możesz wyświetlić na stronie Wersje na karcie Agent testowania aplikacji. Po kliknięciu przycisku Wyświetl szczegóły otworzy się okno Wyniki testu, w którym zobaczysz wszystkie problemy, zrzuty ekranu aplikacji oraz działania, które Gemini wykonało podczas testu.
.
Automatyczne testowanie kompilacji
Aby automatycznie uruchamiać testy agenta Testowania aplikacji na nowych kompilacjach, na przykład z potoków CI/CD, możesz rozpowszechniać kompilacje do agenta za pomocą wtyczek Gradle lub fastlane w App Distribution lub interfejsu wiersza poleceń Firebase.
Automatyczne testowanie kompilacji za pomocą wiersza poleceń Firebase
Aby korzystać z funkcji agenta testowania aplikacji, musisz określić co najmniej 1 urządzenie testowe i 1 identyfikator testu. Identyfikatory przypadków testowych można znaleźć i pobrać na stronie Test Cases (Przypadki testowe) w konsoli Firebase. Więcej informacji o rozpoczynaniu pracy z interfejsem wiersza poleceń Firebase oraz o różnych sposobach konfigurowania dystrybucji znajdziesz w artykule Rozpowszechnianie aplikacji na Androida wśród testerów za pomocą interfejsu wiersza poleceń Firebase.
Uruchom polecenie appdistribution:distribute, aby przesłać aplikację, a aby skonfigurować dystrybucję dla funkcji agenta testowania aplikacji, użyj tych parametrów:
appdistribution:distribute options
--test-devices lub --test-devices-file
Urządzenia testowe, na których chcesz udostępnić kompilacje funkcji agenta testowania aplikacji.
Urządzenia testowe możesz określić jako listę rozdzieloną średnikami:
Przeprowadzanie testów asynchronicznie. Wyniki automatycznego testu znajdziesz w konsoli Firebase.
--test-case-ids lub --test-case-ids-file
Lista rozdzielana przecinkami identyfikatorów przypadków testowych do uruchamiania testów zautomatyzowanych opartych na AI:
--test-case-ids: "load-app,play-the-first-level"
Możesz też podać ścieżkę do pliku tekstowego zawierającego listę identyfikatorów przypadków testowych rozdzielonych przecinkami lub znakami końca wiersza:
Automatyczne testowanie kompilacji za pomocą Gradle
Aby korzystać z funkcji agenta testowania aplikacji, musisz określić co najmniej 1 urządzenie testowe i 1 identyfikator testu. Identyfikatory przypadków testowych można znaleźć i pobrać na stronie Test Cases (Przypadki testowe) w konsoli Firebase. Więcej informacji o rozpoczynaniu pracy z Gradle i różnych sposobach konfigurowania dystrybucji znajdziesz w artykule Rozpowszechnianie aplikacji na Androida wśród testerów za pomocą Gradle.
Możesz skonfigurować App Distribution, dodając co najmniej 1 sekcję firebaseAppDistribution i korzystając z tych parametrów, aby skonfigurować dystrybucję do funkcji agenta testowania aplikacji:
App Distribution Parametry tworzenia
testDevices lub testDevicesFile
Urządzenia testowe, na których chcesz udostępnić kompilacje funkcji agenta testowania aplikacji.
Urządzenia testowe możesz określić jako listę specyfikacji urządzeń rozdzieloną średnikami.
Możesz też podać ścieżkę do pliku zawierającego listę specyfikacji urządzenia oddzielonych średnikami:
testDevicesFile="/path/to/testDevices.txt"
testUsername
Nazwa użytkownika do automatycznego logowania, która ma być używana podczas testów.
testPassword lub testPasswordFile
Hasło do automatycznego logowania, które ma być używane podczas testów.
Możesz też określić ścieżkę do pliku tekstowego zawierającego hasło:
testPasswordFile="/path/to/testPassword.txt"
testNonBlocking
Przeprowadzanie testów asynchronicznie. Wyniki automatycznego testu znajdziesz w konsoli Firebase.
testCases lub testCasesFile
Lista rozdzielana przecinkami identyfikatorów przypadków testowych do uruchamiania testów zautomatyzowanych opartych na AI:
testCases: "load-app,play-the-first-level"
Możesz też podać ścieżkę do pliku tekstowego zawierającego listę identyfikatorów przypadków testowych rozdzielonych przecinkami lub znakami końca wiersza:
testCasesFile: "/path/to/test-case-ids.txt"
Automatyczne testowanie kompilacji za pomocą fastlane
Aby korzystać z funkcji agenta testowania aplikacji, musisz określić co najmniej 1 urządzenie testowe i 1 identyfikator testu. Identyfikatory przypadków testowych można znaleźć i pobrać na stronie Test Cases (Przypadki testowe) w konsoli Firebase. Więcej informacji o rozpoczynaniu pracy z fastlane i różnych sposobach konfigurowania dystrybucji znajdziesz w artykule Rozpowszechnianie aplikacji na Androida wśród testerów za pomocą fastlane.
Na pasie ./fastlane/Fastfile dodaj blok firebase_app_distribution. Aby skonfigurować dystrybucję dla funkcji agenta testowania aplikacji, użyj tych parametrów:
Parametry firebase_app_distribution
test_devices lub test_devices_file
Urządzenia testowe, na których chcesz udostępnić kompilacje funkcji agenta testowania aplikacji. Urządzenia testowe możesz określić jako listę rozdzieloną średnikami:
Możesz też podać ścieżkę do pliku tekstowego zawierającego listę urządzeń testowych rozdzielonych średnikami:
test_devices_file: "/path/to/test-devices.txt"
test_username
Nazwa użytkownika do automatycznego logowania, która ma być używana podczas testów.
test_password lub test_password_file
Hasło do automatycznego logowania, które ma być używane podczas testów.
Możesz też określić ścieżkę do pliku tekstowego zawierającego hasło:
test_password_file: "/path/to/test-password.txt"
test_non_blocking
Przeprowadzanie testów asynchronicznie. Wyniki automatycznego testu znajdziesz w konsoli Firebase.
--test_case_ids lub --test_case_ids_file
Lista rozdzielana przecinkami identyfikatorów przypadków testowych do uruchamiania testów zautomatyzowanych opartych na AI:
--test_case_ids: "load-app,play-the-first-level"
Możesz też podać ścieżkę do pliku tekstowego zawierającego listę identyfikatorów przypadków testowych rozdzielonych przecinkami lub znakami końca wiersza:
Jeśli wyniki testu różnią się od oczekiwanych, możesz debugować test, korzystając z opcji Pokaż widok agenta w sekcji Wyświetl szczegóły na stronie wyników testu. Widok agenta zawiera elementy na ekranie, które agent testujący aplikację był w stanie wykryć, korzystając z informacji o ułatwieniach dostępu w aplikacji.
Jeśli chcesz dokładniej przyjrzeć się temu, co widziała osoba z zespołu pomocy, możesz pobrać te informacje z menu działań.
Możesz też użyć przycisku Wyświetl elementy na stronie Wyniki testu, aby sprawdzić wszystkie filmy, dzienniki i inne elementy Cloud, które zawierają wyniki testu.
Znane problemy i ograniczenia
Wersja testowa agenta Testowanie aplikacji ma pewne znane ograniczenia:
Ponieważ agent Testowania aplikacji używa do testowania aplikacji generatywnej AI, czasami może wykonywać różne czynności, nadal wykonując te same instrukcje.
Agent Testowanie aplikacji obsługuje tylko te działania: kliknięcie, wpisanie tekstu, przewijanie w górę, przewijanie w dół i czekanie.
Usługa App Testing ma problemy z wykonywaniem testów zawierających tylko 1 krok, do którego wykonania potrzebne jest wiele działań. Jest ona skuteczniejsza, gdy skomplikowane zadania są dzielone na kilka krótszych etapów.
Czasami agent Testowania aplikacji nie przewija ekranu, aby pokazać inne elementy. Zdarza się to częściej, gdy nie ma wizualnego wskazania możliwości przewijania. Aby zasugerować przewijanie, możesz użyć pola „Wskazówki”.
Czasami agent Testowania aplikacji ma problemy z liczeniem, np. z wykonywaniem danej czynności określoną liczbę razy.
Testowanie limitów
W okresie testów przedpremierowych testy oparte na sztucznej inteligencji będą dostępne bezpłatnie w ramach limitu. Domyślny limit to 100 testów miesięcznie.
Pamiętaj, że jeśli zdecydujesz się uruchomić kilka przypadków testowych lub ten sam przypadek testowy na kilku urządzeniach, będzie to traktowane jako kilka testów. Jeśli na przykład uruchomisz 2 przypadki testowe na 2 urządzeniach, będzie to łącznie 4 testy.
Aby zwiększyć limit powyżej domyślnego, skontaktuj się z zespołem pomocy Firebase i opisz swój przypadek użycia.