Test Robo to narzędzie testowe, które jest zintegrowane z Firebase Test Lab. Test Robo analizuje strukturę interfejsu użytkownika aplikacji, a następnie metodycznie, automatycznie symulując działania użytkownika. Test Robo zawsze symuluje te same działania użytkownika w tej samej kolejności, gdy jest używana testować aplikację na określonej konfiguracji urządzenia z tymi samymi ustawieniami. To powtarzalne podejście do testowania umożliwia korzystanie z testu Robo do sprawdzania poprawności naprawionych błędów i testowania regresji.
test Robo przechwytuje pliki dziennika, zapisuje serię zrzutów ekranu z adnotacjami oraz a potem tworzy film z symulowanego użytkownika. wykonanych operacji. Te dzienniki, zrzuty ekranu i filmy pomogą Ci ustalić główną przyczynę awarii aplikacji. Te funkcje testowe Robo mogą też ułatwiają znajdowanie problemów z interfejsem aplikacji.
Oprócz przeprowadzania regularnych testów Robo możesz je dostosowywać używając skryptów Robo, które są cechą testów Robo. Więcej informacji znajdziesz w artykule uruchamianie skryptu Robo.
Jeśli chcesz wypróbować wersję beta Robo na iOS+, zobacz Uruchamianie a Robo Testuj.
Statystyki indeksowania testowego Robo
Aby ułatwić interpretację wyników testu Robo, test Robo rejestruje statystyki każdego indeksowania. Test Lab wyświetla statystyki u góry karty testu Robo na stronie wyników testu:
Działania: łączna liczba działań wykonanych podczas indeksowania, w tym działania skryptu Robo, działania małp i dyrektywy Robo.
Działania: liczba różnych działań uwzględnianych podczas indeksowania.
Ekrany: liczba różnych ekranów odwiedzonych podczas indeksowania.
Test Lab używa też statystyk do tworzenia wizualnego przedstawienia testu Robotest w postaci wykresu indeksowania. Wykres ma ekrany jako węzły, a jak krawędzie. Śledząc krawędzie między ekranami, możesz zorientować się, jak test Robo przemierzał Twoją aplikację podczas indeksowania.
Limit czasu testu Robo
W zależności od złożoności interfejsu aplikacji test Robo może
wykonanie wszystkich czynności interfejsu użytkownika zajmie Ci co najmniej pięć minut. Śr
zalecamy ustawienie limitu czasu testu na co najmniej 120 sekund (2 minuty) przez większość
oraz 300 sekund (5 minut) w przypadku średnio złożonych aplikacji. Wartość domyślna
czasu oczekiwania to 300 sekund (5 minut) w przypadku testów wykonywanych w Android Studio oraz
w konsoli Firebase, a w przypadku testów prowadzonych w trybie 900 sekund (15 minut)
gcloud
.
Błędy przekroczenia limitu czasu uruchomienia aplikacji
Jeśli aplikacja długo się uruchamia, test Robo może zwrócić błąd i nie zostanie na indeksowanie Twojej aplikacji. Dzieje się tak tylko przy bardzo długim uruchomieniu. czas ten można rozwiązać, poprawiając aplikację tak, aby szybciej się uruchamiała.
Większa kontrola dzięki skryptom Robo
Czasami potrzebujesz większej kontroli nad testami. Możesz na przykład przetestować typowy proces użytkownika lub podać określone dane wejściowe interfejsu, takie jak nazwa użytkownika i hasło. Skrypty Robo mogą pomóc. Więcej informacji o skryptach Robo znajdziesz w artykule Przeprowadzanie operacji za pomocą skryptu Robo i przewodniku po skryptach Robo.
Testy Robo i widżety spoza interfejsu Androida
Testy automatyczne korzystają z interfejsu API Androida, aby bezpośrednio wykonywać działania na elementach interfejsu użytkownika Androida. Dzięki temu testy mogą automatycznie poznawać interfejs użytkownika, ale mają też większą kontrolę Wyodrębnianie hierarchii interfejsu Androida dla ekranu aby przeprowadzić na nim testy.
Jeśli ekran aplikacji nie korzysta z widżetów interfejsu Androida, testy Robo wrócą do działania Małpy Akcje, aby przetestować ten ekran. W przeciwieństwie do bardziej metodycznych działań testowych w Robo Test Actions, Monkey Actions po prostu symuluje zdarzenia dotknięcia w półlosowych lokalizacjach na ekranie urządzenia.
Aby lepiej testować ekrany, które nie korzystają z widżetów interfejsu Androida, możesz zastąpić sekcję dowolne kliknięcia w ramach akcji małpy, z wybranymi przez scenariusz dotknięciami i interakcjami. Przez Firebase Test Lab Testy pętli gry.
Integracja z Google Play
Test Robo w Konsoli Google Play możesz użyć podczas przesyłania i publikowania pliku APK aplikacji za pomocą kanału alfa lub beta. Test Robo działa na popularnych urządzeniach fizycznych w różnych lokalizacjach geograficznych, umożliwia testowanie na różnych formatach i konfiguracjach sprzętowych. Więcej informacji: Korzystaj z raportów przed opublikowaniem, aby wykrywać problemy.
Logowanie się na konto testowe i wstępny tekst
Test Robo obsługuje logowanie na koncie testowym i umożliwia wpisywanie wstępnie zdefiniowanego tekstu w polach w aplikacji. W przypadku niestandardowego logowania i innych wstępnie zdefiniowanych tekstów test Robo może wpisywać tekst w polach EditText
w aplikacji. W przypadku każdego ciągu musisz wskazać pole EditText
za pomocą nazwy zasobu Androida. Więcej informacji:
Dostęp do zasobów.
Zaloguj się
Test Robo udostępnia 2 obustronnie wykluczające się metody obsługi logowania:
Niestandardowe logowanie: jeśli podasz dane logowania do konta testowego, Przetestuj Robo, gdzie je wpisać, i podaj też te dane.
Logowanie automatyczne: jeśli Twoja aplikacja ma ekran logowania, który używa konta Google do uwierzytelniania, test Robo używa konta testowego Google, chyba że podasz dane logowania do konta testowego na potrzeby logowania niestandardowego.
Aby podać dane logowania na konto testowe do logowania niestandardowego:
Na stronie Wybieranie wymiarów kliknij Dodatkowe opcje.
W sekcji Testowe dane logowania (opcjonalnie) wpisz nazwę użytkownika i nazwy zasobów haseł oraz nazwę użytkownika i hasło do konta testowego.
Wstępnie zdefiniowany tekst
Możesz podać niestandardowe dane wejściowe w innych polach tekstowych używanych przez aplikację. Aby wpisać tekst w dodatkowych polach, wykonaj te czynności:
Na stronie Wybieranie wymiarów kliknij Dodatkowe opcje.
W sekcji Dodatkowe pola (opcjonalnie) wpisz co najmniej 1 nazwę zasobu oraz ciągi znaków, które mają być wpisywane w odpowiednich polach tekstowych.
Błędy w danych wejściowych wstępnie zdefiniowanego tekstu {:#predefined-text}
Test Robo wyszukuje pola EditText
o nazwie zasobu Androida, która
pasuje do podanego wyrażenia regularnego. Jeśli robot nie znajdzie pasującego pola, nie wprowadzi tekstu, ale będzie kontynuować indeksowanie w zwykły sposób.
Precyzyjne linki
Możesz podać maksymalnie 3 precyzyjne linki.
które Twoja aplikacja obsługuje do testów.
Precyzyjne linki są wysyłane do Twojej aplikacji jako intencje Androida
ACTION_VIEW
. Dlatego każdy link musi pasować do filtra intencji w Twojej aplikacji.
Jeśli podano co najmniej 1 link do podstrony, aplikacja jest najpierw uruchamiana normalnie (za pomocą inencji ACTION_MAIN
) i przeszukiwana do określonego limitu czasu. Po głównym indeksowaniu każda głębokość
jest indeksowany przez dodatkowe 30 sekund.
Błędy precyzyjnych linków
Jeśli test Robo nie znajdzie aktywności pasującej do precyzyjnego linku, Test Lab ignoruje link. Problemy z precyzyjnymi linkami są zwykle spowodowane rozbieżnością między podanym precyzyjnym linkiem a jego definicją w aplikacji. Sprawdź zarówno podany URL, jak i aplikację pod kątem literówek lub innych niespójności.
Pomoc dotycząca licencjonowania aplikacji
Test Lab obsługuje aplikacje, które korzystają z: Licencjonowanie aplikacji usłudze oferowanej przez Google Play. Aby sprawdzić licencjonowanie podczas testowania aplikacji za pomocą Test Lab, musisz opublikować ją na produkcyjnym kanale w Sklepie Play. Aby przetestować aplikację na kanale alfa lub beta za pomocą Test Lab, przed przesłaniem aplikacji do Test Lab usuń kontrolę licencji.
Dalsze kroki
- Dostosuj testy za pomocą skryptów Robo.