Ten dokument opisuje, jak używać skryptów Robo, czyli testów, które automatyzują ręczne zadania kontroli jakości w aplikacjach mobilnych i umożliwiają stosowanie strategii ciągłej integracji (CI) oraz testowania przed publikacją. 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 silnika testowego. W najprostszej postaci skrypt Robo składa się z sekwencji działań w interfejsie użytkownika, takich jak wpisanie tekstu „nazwa użytkownika” , a następnie kliknięcie przycisku OK. Skrypty Robo mogą też obejmować działania takie jak czekanie na pojawienie się elementu, kliknięcie w określonym miejscu elementu i wykonywanie poleceń powłoki Android Debug Bridge (adb).
Skrypty Robo mają te zalety w porównaniu z tradycyjnymi platformami testowymi:
| Możliwość | Opis |
| Wysoka odporność | Skrypty Robo mogą tolerować znaczne różnice strukturalne i behawioralne między wersjami aplikacji oraz niestabilność aplikacji. |
| Otwarte | Po zakończeniu skryptu Robo podstawowy test Robo może przejąć kontrolę i kontynuować testowanie aplikacji. To podejście do testowania umożliwia kilka kluczowych przypadków użycia. 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 kodować skryptów Robo. Można je nagrywać za pomocą rejestratora skryptów Robo w Android Studio. Tworzenie lub modyfikowanie skryptów Robo zwykle nie wymaga znajomości tworzenia aplikacji mobilnych. |
| Elastyczne | Skrypty Robo mogą wchodzić w interakcje z elementami interfejsu użytkownika, które nie są natywne i są powszechne w grach. |
Skrypty Robo są warunkowo wywoływane podczas testu Robo, co pozwala użytkownikom rozszerzać zachowanie Robo – zwykle w celu uzyskania większego pokrycia lub kierowania na określone 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;
- elementy sterujące wykonywaniem, np. maksymalna liczba wykonań, priorytet, odpowiedni etap indeksowania;
- nietypowe typy działań (warunkowe, ignorujące elementy, zamykające ekran).
Jeśli to możliwe, zalecamy używanie skryptów Robo, ponieważ można je łatwo utrzymywać. Możesz na przykład użyć skryptu Robo, aby:
- przejść przez ważne procesy, aby dotrzeć do podstawowych funkcji aplikacji; możesz na przykład zalogować się, skonfigurować stan aplikacji po pierwszym uruchomieniu i zarejestrować nowego użytkownika;
- skupić Robo na określonej części aplikacji, aby jak najlepiej 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;
- wprowadzić aplikację w określony stan lub wyświetlić określony ekran, aby przeprowadzić analizę, np. przeanalizować wiadomość w aplikacji, politykę prywatności lub określony poziom gry;
- przeprowadzić kompleksowy test z instrumentacją, z wznawianiem w pełni zautomatyzowanego indeksowania przez test Robo po zakończeniu skryptu Robo lub bez niego.
Aby wykonać te czynności, użyj bardziej zaawansowanych funkcji skryptu Robo:
- wykonywanie działań przed rozpoczęciem indeksowania testowanej aplikacji przez Robo lub po jego zakończeniu, np. czyszczenie danych testowanej aplikacji przed indeksowaniem lub zmiana ustawień urządzenia;
- zmiana aspektów zachowania Robo podczas indeksowania, w szczególności:
- sprawienie, że Robo będzie ignorować niektóre widżety interfejsu użytkownika lub ekrany aplikacji;
- podanie niestandardowego działania, które Robo ma wykonać podczas cofania się z określonego ekranu;
- sprawienie, że Robo będzie wykonywać określone działania za każdym razem, gdy podczas indeksowania napotka określony ekran aplikacji;
- pełne dostosowanie sposobu indeksowania przez Robo. Możesz na przykład użyć kombinacji działań warunkowych i bezwarunkowych, aby testowana aplikacja działała w tle przez cały czas indeksowania, a jednocześnie wykonywać manipulacje na urządzeniu i zamykać wszystkie wyskakujące okna, które pojawią się w trakcie.
Pamiętaj, że skrypty Robo nie zastępują wszystkich rodzajów testów. Nadal potrzebujesz testów jednostkowych, aby wykrywać błędy w logice niskiego poziomu w aplikacji. Te testy zwykle nie wymagają środowiska Androida ani iOS. Zalecamy uzupełnienie testów skryptów Robo ukierunkowanymi testami z instrumentacją, 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, użyciu i działaniach skryptów Robo, zapoznaj się z przewodnikiem po skryptach Robo.