W tym dokumencie opisujemy, jak używać skryptów Robo, czyli testów, które automatyzują ręczne zadania związane z kontrolą jakości aplikacji mobilnych i umożliwiają stosowanie strategii ciągłej integracji (CI) oraz testowania przed wprowadzeniem aplikacji na rynek. Możesz na przykład używać skryptów Robo do testowania typowej ścieżki użytkownika lub do wprowadzania określonych danych w interfejsie użytkownika, takich jak nazwa użytkownika i hasło. Skrypty Robo to funkcja testu Robo.
Skrypty Robo używają testu Robo jako mechanizmu testowego. W najprostszej postaci skrypt Robo składa się z sekwencji działań w interfejsie, takich jak wpisanie tekstu „nazwa użytkownika”, a następnie kliknięcie przycisku OK. Skrypty Robo mogą też zawierać działania takie jak czekanie na pojawienie się elementu, kliknięcie określonego punktu w elemencie i wykonywanie poleceń powłoki Android Debug Bridge (adb).
Skrypty Robo mają te zalety w porównaniu z tradycyjnymi platformami testowymi:
| Możliwość | Opis |
| Bardzo wytrzymały | Skrypty Robo są odporne na znaczne różnice strukturalne i behawioralne między wersjami aplikacji oraz na niestabilność aplikacji. |
| Otwarte | Po zakończeniu skryptu Robo może przejąć kontrolę podstawowy test Robo i kontynuować testowanie aplikacji. Takie podejście do testowania umożliwia kilka kluczowych zastosowań. Możesz na przykład użyć skryptu Robo, aby wprowadzić aplikację w określony stan, wykonując niestandardowy proces logowania. |
| Z nagraniem | Nie musisz ręcznie pisać skryptów Robo. Możesz je nagrywać za pomocą rejestratora skryptów Robo w Android Studio. Tworzenie i modyfikowanie skryptów Robo zwykle nie wymaga żadnej wiedzy o tworzeniu aplikacji mobilnych. |
| Elastyczne | Skrypty Robo mogą wchodzić w interakcje z nienatywnymi elementami interfejsu, które są powszechne w grach. |
Skrypty Robo są wywoływane warunkowo podczas testu Robo, co pozwala użytkownikom rozszerzać zachowanie robota, zwykle w celu uzyskania większego pokrycia lub ukierunkowania na konkretne funkcje. W przeciwieństwie do tradycyjnych platform testowych skrypty Robo obsługują:
- Różne warunki wyzwalania, np. aktywność (lub brak aktywności) określonej nazwy pakietu aplikacji lub wyświetlanie (lub brak wyświetlania) określonego elementu na ekranie.
- Kontrole wykonywania, np. maksymalna liczba wykonań, priorytet, odpowiedni etap indeksowania.
- Nietypowe typy działań (warunkowe, ignorujące element, zamykające ekran).
Zalecamy używanie skryptów Robo, gdy tylko jest to możliwe, ponieważ można je łatwo utrzymywać. Za pomocą skryptu Robo możesz na przykład:
- Przejdź przez najważniejsze procesy, aby poznać główne funkcje aplikacji. Możesz na przykład zalogować się, skonfigurować stan aplikacji po pierwszym uruchomieniu i zarejestrować nowego użytkownika.
- Skup narzędzie Robo na konkretnej części aplikacji, aby w pełni wykorzystać czas testu Robo. Skrypt Robo kieruje test Robo do odpowiedniej części aplikacji, w której test Robo wznawia w pełni zautomatyzowane indeksowanie.
- Uruchom aplikację w określonym stanie lub na określonym ekranie, aby przeprowadzić analizę, np. analizę wiadomości w aplikacji, polityki prywatności lub konkretnego poziomu gry.
- Przeprowadź kompleksowy test z instrumentacją z użyciem testu Robo lub bez niego. Po zakończeniu skryptu Robo test zostanie wznowiony w pełni automatycznym trybie.
Korzystaj z bardziej zaawansowanych funkcji skryptu Robo, aby:
- Wykonuj działania przed rozpoczęciem indeksowania testowanej aplikacji przez Robo lub po zakończeniu indeksowania, np. wyczyść dane testowanej aplikacji przed indeksowaniem lub zmień ustawienia urządzenia.
- zmieniać aspekty działania robota podczas indeksowania, w szczególności:
- Spraw, aby narzędzie Robo ignorowało niektóre widżety interfejsu lub ekrany aplikacji.
- Określ działanie niestandardowe, które Robo ma wykonać podczas cofania się z określonego ekranu.
- Spraw, aby test Robo wykonywał określone działania, gdy podczas indeksowania napotka konkretny ekran aplikacji.
- W pełni dostosuj sposób działania narzędzia Robo. Możesz na przykład użyć kombinacji działań warunkowych i bezwarunkowych, aby podczas testowania aplikacja pozostawała w tle, a jednocześnie wykonywać manipulacje na urządzeniu i zamykać wszystkie wyskakujące okna dialogowe, które pojawią się w trakcie testowania.
Pamiętaj, że skrypty Robo nie zastępują wszystkich rodzajów testów. Nadal potrzebujesz testów jednostkowych, aby wykrywać błędy logiki niskiego poziomu w aplikacji. Te testy zwykle nie wymagają środowiska Androida ani iOS. Zalecamy uzupełnianie testów skryptów Robo ukierunkowanymi testami instrumentacji, które mogą zawierać szczegółowe asercje dotyczące logiki biznesowej, najlepiej wyrażone w kodzie.
Dalsze kroki
Aby dowiedzieć się więcej o strukturze, możliwościach, zastosowaniu i działaniach skryptów Robo, zapoznaj się z przewodnikiem po skryptach Robo.