Uruchamianie skryptu Robo (Android)

W tym dokumencie opisujemy, jak używać skryptów Robo, czyli testów, które automatyzować ręczne zadania kontroli jakości w przypadku aplikacji mobilnych i włączać tryb ciągłej integracji. (CI) i testach przed opublikowaniem. Możesz na przykład użyć skryptów Robo, do testowania typowej ścieżki użytkownika lub wprowadzania konkretnych danych wejściowych w interfejsie np. nazwę użytkownika i hasło. Skrypty Robo to funkcja Test Robo.

Dzięki skryptom Robo nagrywasz, jak przechodzisz przez przepływ pracy w aplikacji, a następnie przesyłasz nagranie do konsoli Firebase, aby uruchomić je w Robo. testów. Gdy uruchamiasz test Robo z dołączonym skryptem, pierwsze kroki Robo za pomocą przygotowanych przez nas działań, a potem jak do tej pory przeglądać aplikację.

Skrypty Robo korzystają z testu Robo. jako silnik testowy. W najbardziej podstawowej formie skrypt Robo składa się z sekwencja działań interfejsu, takich jak wpisz tekst 'nazwa_użytkownika' i , a następnie kliknij przycisk OK. Skrypty Robo mogą również obejmować działania takie jak oczekiwanie aby element się pojawił. Aby to zrobić, kliknij w określonym miejscu elementu. wykonywania poleceń powłoki Android Debug Bridge (adb).

Skrypty Robo mają następujące zalety w porównaniu z tradycyjnymi platformami testowania:

Zdolność Opis
Bardzo wytrzymała Skrypty Robo mogą tolerować znaczną strukturę i zachowania między wersjami i niezawodnością aplikacji.
Pytanie otwarte Po zakończeniu działania skryptu Robo może przejąć podstawowy test Robo. dalej testować aplikację. Ciągłe testowanie w kilku kluczowych przypadkach użycia. Można np. użyć skryptu Robo, aby do określonego stanu aplikacji przez wykonanie niestandardowego procesu logowania.
Z możliwością nagrywania Nie musisz ręcznie kodować skryptów Robo. Można je nagrać za pomocą za pomocą nagrywarki skryptów Robo w Android Studio. Tworzenie lub modyfikowanie Robo skryptów zwykle nie wymaga żadnej wiedzy o tworzeniu aplikacji mobilnej.
Elastyczne Skrypty Robo mogą wchodzić w interakcje z nienatywnymi elementami interfejsu, które często występują gry.

Skrypty Robo są wywoływane warunkowo podczas testu Robo, co pozwala użytkownikom ulepszenie działania Robo – zazwyczaj w celu osiągnięcia większego zasięgu lub większego celu określonych funkcji. W przeciwieństwie do tradycyjnych platform testowania Skrypty Robo obsługują te funkcje:

  • różne warunki aktywujące, np. nazwa konkretnego pakietu aplikacji; aktywność (lub nie aktywność) albo konkretny element wyświetlany na ekranie, (lub nie).
  • elementy sterujące wykonaniem, na przykład maksymalną liczbę uruchomień, priorytet na odpowiednim etapie indeksowania.
  • Niekonwencjonalne typy działań (warunkowe, ignorowanie elementów, zamykanie ekranu).

Zalecamy używanie skryptów Robo, gdy tylko jest to możliwe, bez wysiłku. Można np. użyć skryptu Robo do wykonywania :

  • korzystać z istotnych przepływów pracy, aby znaleźć podstawowe funkcje aplikacji; Możesz na przykład zalogować się, ustawić stan aplikacji po parametrze pierwszego uruchomienia i zarejestruj nowego użytkownika.
  • Skoncentruj Robo na konkretnej części aplikacji, aby jak najlepiej wykorzystać potencjał testu Robo. obecnie się znajdujesz. Skrypt Robo prowadzi test Robo, aby dotrzeć do odpowiedniej części aplikacji, w którym test Robo wznawia w pełni zautomatyzowane indeksowanie.
  • wprowadzić aplikację do określonego stanu lub ekranu w celu przeprowadzenia analizy, np. aby przeanalizować wiadomość w aplikacji, politykę prywatności lub określony poziom danej gry.
  • Przeprowadź kompleksowy test z instrumentacją z testem Robo lub bez niego wznowienie w pełni automatycznego indeksowania po zakończeniu działania skryptu Robo.

Użyj bardziej zaawansowanych funkcji skryptu Robo, aby:

  • Wykonaj czynności, zanim Robo rozpocznie indeksowanie aplikacji w trakcie testowania lub po po zakończeniu indeksowania, np. wyczyść dane aplikacji w trakcie testu przed z indeksowaniem lub zmień ustawienia urządzenia.
  • Zmieniaj aspekty działania Robo podczas indeksowania, w szczególności:
    • Ustaw Robo ignoruje niektóre widżety interfejsu lub ekrany aplikacji.
    • Podaj niestandardowe działanie, które Robo ma wykonać w przypadku wycofywania konkretnego ekranu.
    • Pozwalaj Robo wykonywać określone działania na każdym ekranie aplikacji napotkanych podczas indeksowania.
  • Możesz całkowicie dostosować sposób indeksowania przez Robo. Na przykład użyj atrybutu za pomocą kombinacji działań warunkowych i bezwarunkowych, aby utrzymać test aplikacji w tle podczas indeksowania, manipulowanie urządzeniami i zamykanie wyskakujących okien dialogowych, które pojawiają się w całości.

Pamiętaj, że skrypty Robo nie zastępują wszystkich rodzajów testów. Wciąż potrzebujesz testów jednostkowych, aby wychwytywać niskopoziomowe błędy logiczne w aplikacji; te testy zwykle nie wymagają środowiska Androida ani iOS. Zalecamy wzbogacanie testów Robo o ukierunkowane testy z instrumentacją, które mogą konkretne, szczegółowe twierdzenia dotyczące logiki biznesowej, które powinny w kodzie.

Nagraj skrypt Robo za pomocą Laboratorium w Android Studio

Rejestrator skryptów Robo w Android Studio umożliwia nagrywanie skryptów Robo przez wchodzą w bezpośrednią interakcję z aplikacją na urządzeniu. Wykonaj te instrukcje aby zacząć korzystać ze skryptów Robo w narzędziu Firebase w Android Studio:

  1. Otwórz Android Studio. i wybierz Narzędzia -> Firebase.

  2. W panelu Firebase kliknij Nagraj skrypt Robo i użyj go do przeprowadzenia testu Robo.

  3. Kliknij Zarejestruj skrypt Robo. Okno wyboru celu wdrożenia

  4. Wybierz urządzenie, na którym chcesz rejestrować skrypt Robo.

  5. Po zarejestrowaniu skryptu Robo na urządzeniu zapisz plik jako plik JSON w wybranym miejscu.

  6. Otwórz stronę Laboratorium w konsoli Firebase i prześlij plik JSON skrypt i plik APK aplikacji.

  7. Kliknij przycisk Dalej. Pojawi się prośba o wybranie urządzenia poziom interfejsu API. Po wykonaniu skryptu testowego Laboratorium wygeneruje raport z testu.

  8. (Opcjonalnie) Aby skopiować lub pobrać logcat raportu z testu i filmu: kliknij Wyświetl pliki źródłowe.

.

Domyślnie mechanizmy odporności skryptu Robo zapobiegają jego wczesnej awarii. Jeśli wybierzesz tryb wykonywania strict i skrypt Robo w którymkolwiek momencie zakończy się niepowodzeniem, Laboratorium rezygnuje ze wszystkich kolejnych kroków w scenariuszu i wznawia Rajdowanie Robo. Skrypty Robo najczęściej ulegają awarii, ponieważ Robo nie może znaleźć wymaganego element na ekranie. Aby uniknąć błędów, upewnij się, że poruszanie się po aplikacji jest by były przewidywalne i pokazywane na ekranach w określonej kolejności deterministycznej.

Uruchamianie skryptu Robo w Laboratorium

Aby uruchomić skrypt Robo w Laboratorium:

  1. Otwórz stronę Laboratorium w konsoli Firebase.

  2. Prześlij pakiet APK lub AAB aplikacji w polu Plik APK lub AAB aplikacji.

  3. Prześlij nagrany lub ręcznie utworzony plik skryptu Robo do Pole Skrypt Robo (opcjonalnie).

Udostępnij skrypt Robo do lokalnego uruchomienia testowego Robo

Aby udostępnić skrypt Robo do lokalnego uruchomienia testu Robo, użyj tego testu Robo opcja:

--robo-script-file <robo-script-path>

Zastąp <robo-script-path> ścieżką do pliku skryptu Robo w lokalnym pliku systemu plików. Wykonaj instrukcje dotyczące lokalnego testu Robo). .

Określanie skryptu Robo w wywołaniu testu interfejsu wiersza poleceń gcloud

Aby określić skrypt Robo w wywołaniu testu interfejsu wiersza poleceń gcloud, użyj tego kodu: Flaga interfejsu wiersza poleceń gcloud:

--robo-script = <robo-script-path>

Zastąp <robo-script-path> ścieżką do pliku skryptu Robo w lokalnym pliku w systemie plików lub w Cloud Storage przy użyciu notacji gs://. Przykład:

gcloud firebase test android run --app = <path_to_app_apk_file> --robo-script = <robo-script-path>

Dalsze kroki