Robo 테스트는 Firebase Test Lab에 통합된 테스트 도구입니다.
Robo 테스트는 앱의 사용자 인터페이스(UI) 구조를 분석한 후 사용자 활동을 자동으로 시뮬레이션하여 체계적으로 탐색합니다. Robo 테스트는 동일한 설정으로 특정 기기 구성에서 앱을 테스트할 때 항상 같은 사용자 활동을 동일한 순서로 시뮬레이션합니다. 반복 가능한 이 테스트 방법을 사용하면 Robo 테스트를 사용하여 버그 수정을 검증하고 회귀 테스트를 수행할 수 있습니다.
Robo 테스트에서는 로그 파일을 수집하고, 주석이 들어간 스크린샷을 저장하고, 이러한 스크린샷으로 동영상을 제작하여 테스트 중에 수행된 사용자 작업 시뮬레이션을 보여 줍니다. 이러한 로그, 스크린샷, 동영상은 앱 비정상 종료의 근본 원인을 파악하는 데 도움이 될 수 있습니다. 이러한 Robo 테스트 기능은 앱의 UI 문제를 찾는 데도 도움이 됩니다.
일반 Robo 테스트 실행 외에도 Robo 테스트 기능인 Robo 스크립트를 사용하여 테스트를 맞춤설정할 수 있습니다. 자세한 내용은 Robo 스크립트 실행을 참조하세요.
Robo 테스트 크롤링 통계
Robo 테스트 결과 해석을 돕기 위해 Robo 테스트가 각 테스트 크롤링 진행 시 통계를 기록합니다. Test Lab은 테스트 결과 페이지의 Robo 테스트 탭 상단에 통계를 표시합니다.
작업: Robo 스크립트 작업, Monkey 작업, Robo 지시어를 비롯한 크롤링 중 수행된 총 작업 수입니다
화면: 크롤링 중 방문한 각 화면의 수입니다.
Test Lab은 또한 통계를 사용하여 크롤링 그래프 형식으로 Robo 테스트를 시각적으로 나타냅니다. 그래프에서 화면은 노드, 작업은 에지입니다. 화면 간 에지를 따라 Robo 테스트가 크롤링을 통해 앱을 어떻게 순회했는지 볼 수 있습니다.
Robo 테스트 제한 시간
앱 UI의 복잡도에 따라 Robo 테스트에서 전체 UI 상호작용 세트를 완료하는 데 5분 이상이 걸릴 수 있습니다. 대부분의 앱에 테스트 제한 시간을 120초(2분) 이상으로, 비교적 복잡한 앱에는 300초(5분)로 설정하는 것이 좋습니다. 제한 시간 기본값은 Firebase Console에서 테스트를 실행할 때는 300초(5분), gloud 명령줄에서 테스트를 실행할 때는 900초(15분)입니다.
앱 시작 제한 시간 오류
앱이 시작되는 데 시간이 오래 걸릴 경우 Robo 테스트가 오류 메시지를 표시하고 앱을 크롤링하지 못할 수도 있습니다. 이 문제는 시작하는 데 시간이 매우 오래 걸리는 경우에만 발생하며 앱이 더욱 빨리 시작되도록 수정해야만 해결될 수 있습니다.
Robo 스크립트를 사용한 추가 제어
테스트를 더 세밀하게 제어해야 할 때가 있습니다. 예를 들어 일반적인 사용자 경험을 테스트하거나 사용자 이름 및 비밀번호 같은 특정 UI 입력을 제공해야 할 수 있습니다. 이때 Robo 스크립트가 도움이 될 수 있습니다. Robo 스크립트에 대한 자세한 내용은 Robo 스크립트 실행 및 Robo 스크립트 참조 가이드를 참조하세요.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-09-05(UTC)"],[],[],null,["\u003cbr /\u003e\n\n| **Note:** Robo for iOS+ is a beta release. This means that the capabilities might change in backward-incompatible ways. A beta release is not subject to any SLA or deprecation policy and may receive limited or no support.\n\nRobo test is a testing tool that is integrated with Firebase Test Lab.\nRobo test analyzes the structure of your app's user interface (UI) and then\nexplores it methodically, automatically simulating user activities. Robo test\nalways simulates the same user activities in the same order when you use it to\ntest an app on a specific device configuration with the same settings. This\nrepeatable testing approach lets you use Robo test to validate bug fixes and\ntest for regressions.\n| **Note:** Robo test is not the same as (or based on) the Robotium or Robolectric test frameworks.\n\nRobo test captures log files, saves a series of annotated screenshots, and\nthen creates a video from those screenshots to show you the simulated user\noperations that it performed. These logs, screenshots, and videos can help\nyou determine the root cause of app crashes. These Robo test features can also\nhelp you find issues with your app's UI.\n\nIn addition to running regular Robo tests, you can customize your tests\nusing Robo scripts, which are a feature of Robo tests. To learn more,\nsee [Run a Robo script](/docs/test-lab/ios/run-robo-scripts).\n\nRobo test crawl stats\n\nTo help you interpret your Robo test results, Robo test records stats during\neach test crawl. Test Lab displays the stats at the top of the Robo test tab\nin your test results page:\n\n- Actions: The total number of actions performed during the crawl, including\n Robo script actions, monkey actions, and Robo directives.\n\n- Screens: The number of distinct screens visited during the crawl.\n\nTest Lab also uses the stats to create a visual representation of the\nRobo test in the form of a crawl graph. The graph has screens as its nodes\nand actions as edges. By following the edges between screens, you can get an\nidea of how Robo test traversed your app throughout the crawl.\n\nRobo test timeout\n\nDepending on the complexity of your app's UI, Robo test might take five minutes\nor more to complete a thorough set of UI interactions. We recommend setting the\ntest timeout to at least 120 seconds (2 minutes) for most apps, and 300 seconds\n(5 minutes) for moderately complex apps. The default value for timeout is 300\nseconds (5 minutes) for tests run from the Firebase console and 900 seconds (15\nminutes) for tests run from the gcloud command line.\n\nApp startup timeout errors\n\nIf your app takes a long time to start, Robo test can throw an error, and won't\nbe able to crawl your app. This only happens in cases of extremely long startup\ntimes, and can only be resolved by revising your app to make it start faster.\n\nMore control with Robo scripts\n\nSometimes you need more control over your tests. For example, you might want to\ntest a common user journey or provide specific UI input like a username and\npassword. Robo scripts can help. To learn more about Robo scripts, see [Run a\nRobo script](https://firebase.google.com/docs/test-lab/ios/run-robo-scripts)\nand [Robo scripts reference\nguide](https://firebase.google.com/docs/test-lab/android/robo-scripts-reference).\n\nNext steps\n\n- Customize your tests [using Robo scripts](/docs/test-lab/ios/run-robo-scripts)."]]