Ten dokument wyjaśnia, jak używać skryptów Robo, czyli testów, które automatyzują zadania kontroli jakości aplikacji mobilnych wykonywane ręcznie, oraz jak stosować strategie testowania przed uruchomieniem i testowania ciągłego (CI). Możesz na przykład użyć skryptów Robo do testowania typowej ścieżki użytkownika lub podać dane wejściowe dotyczące interfejsu użytkownika (UI), takie jak nazwa użytkownika i hasło. Skrypty Robo są funkcją testu Robo.
Skrypty Robo wykorzystują test Robo jako silnik testowy. W najprostszej formie skrypt Robo składa się z sekwencji działań w interfejsie, takich jak wpisanie tekstu „nazwa użytkownika” i następnie kliknięcie przycisku OK. Skrypty robota mogą też zawierać takie działania jak oczekiwanie na pojawienie się elementu, kliknięcie w określonym miejscu elementu i wykonywanie poleceń w powłoce Android Debug Bridge (adb
).
Skrypty Robo mają następujące zalety w porównaniu z tradycyjnymi platformami testowania:
Uprawnienia | Opis |
Wysoka odporność | Skrypty robota mogą tolerować znaczne różnice strukturalne i behawioralne między wersjami aplikacji oraz ich niestabilnością. |
Otwarte | Po zakończeniu działania skryptu Robo test Robo podstawowy może przejąć sterowanie i kontynuować testowanie aplikacji. Takie podejście do testów umożliwia kilka kluczowych zastosowań. Możesz na przykład użyć skryptu Robo, aby wprowadzić aplikację w określony stan przez wykonanie niestandardowego procesu logowania. |
Z możliwością nagrywania | Nie musisz kodować skryptów Robo ręcznie. Można je nagrywać za pomocą rejestratora skryptu Robo w Android Studio. Tworzenie i modyfikowanie skryptów Robo zwykle nie wymaga znajomości programowania na urządzenia mobilne. |
Elastyczne | Skrypty robota mogą wchodzić w interakcje z nienatywnymi elementami interfejsu, które są powszechne w grach. |
Podczas testu skrypty Robo są uruchamiane warunkowo, co pozwala użytkownikom rozszerzać działanie Robo – zwykle w celu zwiększenia zasięgu lub ukierunkowania na konkretne funkcje. W przeciwieństwie do tradycyjnych ramek testowania skrypty Robo obsługują te funkcje:
- różne warunki wywołania, np. czy nazwa konkretnego pakietu aplikacji jest aktywna (lub nie) lub czy określony element jest wyświetlany na ekranie (lub nie);
- Ustawienia wykonania, np. maksymalna liczba wykonań, priorytet, odpowiedni etap indeksowania.
- Nietypowe typy działań (warunkowe, ignorujące elementy, zamykające ekran).
Zalecamy, aby w miarę możliwości używać skryptów Robo, ponieważ można je łatwo konserwować. Skrypt Robo możesz na przykład użyć do:
- Przechodzenie przez najważniejsze procesy, aby dotrzeć do głównej funkcjonalności aplikacji. Możesz na przykład zalogować się, skonfigurować stan aplikacji po pierwszym uruchomieniu i zarejestrować nowego użytkownika.
- Skoncentruj Robo na konkretnym obszarze aplikacji, aby w pełni wykorzystać czas testowania. Skrypt Robo kieruje test Robo do odpowiedniej części aplikacji, gdzie test Robo wznawia całkowicie zautomatyzowane indeksowanie.
- Uruchom aplikację w określonym stanie lub na określonym ekranie, aby przeprowadzić analizę, na przykład analizę wiadomości w aplikacji, polityki prywatności lub określonego poziomu w grze.
- Przeprowadź kompleksowy test pomiarowy z testem Robo (z testem Robo lub bez niego) w ramach całkowicie zautomatyzowanego indeksowania po zakończeniu działania skryptu Robo.
Zaawansowane funkcje skryptu Robo umożliwiają:
- Wykonywanie czynności przed rozpoczęciem indeksowania aplikacji przez Robo lub po zakończeniu indeksowania, np. czyszczenie danych aplikacji testowej przed indeksowaniem lub zmiana ustawień urządzenia.
- Zmiana aspektów działania robota podczas indeksowania, w tym:
- Spraw, aby Robo ignorowało niektóre widżety interfejsu lub ekrany aplikacji.
- Określ niestandardowe działanie, które Robo ma wykonać podczas cofania z określonego ekranu.
- Sprawianie, aby Robo wykonywał określone działania, gdy podczas indeksowania napotka określony ekran aplikacji.
- Możesz całkowicie dostosować sposób indeksowania przez Robo. Możesz na przykład użyć kombinacji działań warunkowych i bezwarunkowych, aby utrzymać testowaną aplikację w tle podczas indeksowania, a zarazem wykonywać manipulacje na urządzeniu i zamykać pojawiające się okna dialogowe.
Pamiętaj, że skrypty robota nie zastępują wszystkich rodzajów testów. Nadal potrzebujesz testów jednostkowych, aby wykrywać błędy logiki niskiego poziomu w aplikacji. Te testy zazwyczaj nie wymagają środowiska Android ani iOS. Zalecamy uzupełnianie testów skryptu Robo o testy ukierunkowane na instrumentowanie, które mogą zawierać szczegółowe twierdzenia dotyczące logiki biznesowej. Najlepiej wyrażać je w kodzie.
Dalsze kroki
Informacje o strukturze, możliwościach, zastosowaniu i działaniach skryptów Robo znajdziesz w przewodniku po skryptach Robo.