2022년 10월 18일에 오프라인과 온라인으로 진행될 Firebase Summit에 참여하세요. Firebase로 앱을 빠르게 개발하고 안심하고 앱을 출시하며 손쉽게 확장하는 방법을 알아보세요. 지금 등록하기

Robo 스크립트 실행

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

이 문서에서는 모바일 앱에 대한 수동 QA 작업을 자동화하고 지속적 통합(CI) 및 사전 출시 테스트 전략을 활성화하는 테스트인 Robo 스크립트 를 사용하는 방법을 설명합니다. 예를 들어 Robo 스크립트를 사용하여 일반적인 사용자 여정을 테스트하거나 사용자 이름 및 비밀번호와 같은 특정 사용자 인터페이스(UI) 입력을 제공할 수 있습니다. Robo 스크립트는 Robo 테스트 의 기능입니다.

Robo 스크립트를 사용하면 앱의 워크플로를 따라가는 자신을 기록한 다음 해당 기록을 Firebase 콘솔에 업로드하여 Robo 테스트에서 실행할 수 있습니다. 스크립트가 첨부된 상태에서 Robo 테스트를 실행하면 Robo는 먼저 사전 스크립팅된 작업을 수행한 다음 평소와 같이 앱을 탐색합니다.

Robo 스크립트는 Robo 테스트 를 테스트 엔진으로 사용하여 앱이 처음 로드될 때 시작됩니다. 가장 기본적인 형태의 Robo 스크립트는 텍스트 '사용자 이름'을 입력 한 다음 확인 버튼을 누르는 것과 같은 일련의 UI 작업으로 구성됩니다. Robo 스크립트에는 요소가 나타나기를 기다리는 것, 요소 내의 특정 지점을 탭하기, Android 디버그 브리지( adb ) 셸 명령 실행과 같은 작업도 포함될 수 있습니다.

Robo 스크립트는 기존 테스트 프레임워크에 비해 다음과 같은 이점이 있습니다.

능력 설명
매우 견고함 Robo 스크립트는 앱 버전과 앱 취약성 간의 상당한 구조적 및 동작적 차이를 허용할 수 있습니다.
개방형 Robo 스크립트가 완료되면 기본 Robo 테스트가 인계받아 앱을 계속 테스트할 수 있습니다. 이 지속적인 테스트 접근 방식은 몇 가지 주요 사용 사례를 가능하게 합니다. 예를 들어 사용자 지정 로그인 흐름을 수행하여 Robo 스크립트를 사용하여 앱을 특정 상태로 만들 수 있습니다.
녹음 가능 Robo 스크립트를 수동으로 코딩할 필요가 없습니다. Android Studio의 Robo 스크립트 레코더를 사용하여 녹음할 수 있습니다. Robo 스크립트를 생성하거나 수정하는 데 일반적으로 모바일 개발에 대한 지식이 필요하지 않습니다.
유연한 Robo 스크립트는 게임에서 흔히 볼 수 있는 기본이 아닌 UI 요소와 상호 작용할 수 있습니다.

Robo 스크립트는 유지 관리가 쉽기 때문에 가능하면 사용하는 것이 좋습니다. 예를 들어 Robo 스크립트를 사용하여 다음을 수행할 수 있습니다.

  • 중요한 워크플로를 탐색하여 앱 기능의 핵심에 도달합니다. 예를 들어 로그인을 수행하고 첫 실행 후 앱의 상태를 설정하고 새 사용자를 등록할 수 있습니다.
  • Robo 테스트 시간을 최대한 활용하려면 앱의 특정 부분에 Robo를 집중하세요. Robo 스크립트는 Robo 테스트가 완전히 자동화된 크롤링을 재개하는 앱의 관련 부분에 도달하도록 Robo 테스트를 안내합니다.
  • 앱을 특정 상태 또는 화면으로 전환하여 인앱 메시지, 개인 정보 보호 정책 또는 게임의 특정 수준을 분석하는 등의 분석을 수행합니다.
  • Robo 스크립트가 완료된 후 완전히 자동화된 크롤링을 재개하는 Robo 테스트를 포함하거나 포함하지 않고 종단 간 계측 테스트를 수행합니다.

Robo 스크립트는 모든 종류의 테스트를 대체하지 않는다는 점을 명심하십시오. 앱에서 낮은 수준의 논리 버그를 포착하려면 여전히 단위 테스트가 필요합니다. 이러한 테스트에는 일반적으로 Android 또는 iOS 환경이 필요하지 않습니다. 코드로 가장 잘 표현되는 비즈니스 로직에 대한 구체적이고 상세한 어설션을 가질 수 있는 대상 계측 테스트로 Robo 스크립트 테스트를 보완하는 것이 좋습니다.

Android Studio에서 Test Lab을 사용하여 Robo 스크립트 기록

Android Studio의 Robo 스크립트 레코더를 사용하면 기기의 앱과 직접 상호 작용하여 Robo 스크립트를 기록할 수 있습니다. Android Studio의 Firebase 도구를 통해 Robo 스크립팅을 시작하려면 다음 안내를 따르세요.

  1. Android Studio 를 열고 도구 -> Firebase 를 선택합니다.

  2. Firebase 창에서 Robo 스크립트 기록 및 Robo 테스트 안내에 사용을 클릭합니다.

  3. Robo 스크립트 기록 을 클릭합니다. 배포 대상 선택 대화 상자가 나타납니다.

  4. Robo 스크립트를 기록할 장치를 선택합니다.

  5. 기기에 Robo 스크립트를 기록한 후 원하는 위치에 JSON 파일로 저장합니다.

  6. Firebase 콘솔에서 Test Lab 페이지를 열고 JSON 스크립트 파일과 애플리케이션 APK를 업로드합니다.

  7. 계속 버튼을 클릭합니다. 디바이스와 API 레벨을 선택하라는 메시지가 표시됩니다. 테스트 스크립트가 완료되면 Test Lab에서 테스트 보고서를 생성합니다.

  8. (선택 사항) 테스트 보고서 및 비디오의 logcat을 복사하거나 다운로드하려면 소스 파일 보기 를 클릭합니다.

기본적으로 Robo 스크립트 견고성 메커니즘은 조기 실패를 방지합니다. strict 실행 모드를 선택하고 Robo 스크립트가 실패하면 Test Lab은 스크립트의 모든 추가 단계를 중단하고 일반 Robo 크롤링을 재개합니다. 대부분의 경우 Robo가 화면에서 필수 요소를 찾을 수 없기 때문에 Robo 스크립트가 실패합니다. 실패를 방지하려면 앱 탐색이 예측 가능하고 화면이 결정적인 순서로 표시되는지 확인하세요.

Test Lab에서 Robo 스크립트 실행

Test Lab에서 Robo 스크립트를 실행하려면 다음 지침을 따르세요.

  1. Firebase 콘솔에서 Test Lab 페이지를 엽니다.

  2. 앱 APK 또는 AAB 필드 에 앱의 APK 또는 AAB를 업로드합니다.

  3. Robo 스크립트(선택 사항) 필드에 기록되거나 수동으로 생성된 Robo 스크립트 파일을 업로드합니다.

로컬 Robo 테스트 실행에 Robo 스크립트 제공

Robo 스크립트를 로컬 Robo 테스트 실행에 제공하려면 다음 Robo 테스트 옵션을 사용합니다.

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

<robo-script-path> 를 로컬 파일 시스템의 Robo 스크립트 파일 경로로 바꿉니다. 로컬 Robo 테스트 실행에 대한 지침을 따릅니다.

gcloud CLI 테스트 호출에서 Robo 스크립트 지정

gcloud CLI 테스트 호출에서 Robo 스크립트를 지정하려면 다음 gcloud CLI 플래그를 사용하세요.

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

<robo-script-path>gs:// 표기법을 사용하여 로컬 파일 시스템 또는 Cloud Storage의 Robo 스크립트 파일 경로로 바꿉니다. 예를 들어:

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

다음 단계