본문 바로가기
AI 관련 자료

AI와 Maestro로 안드로이드 앱 자동화 테스트하기 - #2 Maestro Studio로 화면 보면서 테스트 만들기

by Jay Son 아기 냥이 해린 짱💖 2026. 7. 11.
반응형

[1편] https://json8.tistory.com/217에서는 AI에게 화면 구성을 설명하고 Maestro YAML 스크립트를 받아서, 스크립트 하나로 빌드부터 리포트까지 자동화하는 과정을 봤습니다. YAML 몇 줄이면 충분했지만, 그래도 "요소 id를 정확히 알아야 한다"는 부담은 남아있었습니다. 이번 편에서는 그 부담마저 없애주는 **Maestro Studio**를 써보겠습니다. 화면을 보면서 요소를 확인하고, 자동완성만으로 테스트를 조립하는 방법입니다.

AI와 Maestro로 안드로이드 앱 자동화 테스트하기 

#2 Maestro Studio로 화면 보면서 테스트 만들기

1편에서는 AI에게 테스트 시나리오를 설명하고 Maestro YAML을 생성한 뒤, 실제 단말에서 실행하여 HTML 리포트까지 확인하는 과정을 살펴봤습니다.

하지만 매번 id를 직접 찾거나 AI에게 알려주는 과정이 번거롭게 느껴질 수도 있습니다.

이번 글에서는 Maestro Studio를 이용해 화면을 직접 보면서 테스트를 만드는 방법을 소개합니다. 요소 ID를 외울 필요도 없고, YAML 문법을 모두 기억하지 않아도 테스트를 작성할 수 있습니다.

이번 글에서 다루는 내용

  • Maestro Studio 설치
  • 단말 연결
  • 화면 요소 자동완성
  • 테스트 실행
  • AI 방식과 Studio 방식 비교

Maestro Studio는 별도 데스크톱 앱

예전에는 아래 명령만 실행하면 Studio가 브라우저에서 실행되었습니다.

 
maestro studio
 

하지만 최신 Maestro CLI(2.6.1)에서는 다음과 같은 안내가 출력됩니다.

Maestro Studio is no longer bundled with the CLI.

Download the new Maestro Studio desktop app instead:

https://studio.maestro.dev/MaestroStudio.exe
 

이제 Maestro Studio는 CLI와 분리된 독립 데스크톱 애플리케이션으로 제공됩니다.

따라서 별도로 설치한 후 사용해야 합니다.

회사 PC처럼 프로그램 설치가 제한된 환경이라면 사전에 설치 정책을 확인하는 것을 권장합니다.


프로젝트를 열면 단말이 자동 연결된다

Maestro Studio를 실행하면 먼저 프로젝트 폴더를 선택합니다.

프로젝트를 열면 USB로 연결된 Android 단말이 자동으로 인식되며, 별도의 설정 없이 바로 사용할 수 있습니다.

왼쪽에는 단말 화면이 실시간으로 미러링되고,

오른쪽에는 프로젝트 안의 YAML 파일 목록이 표시됩니다.


새로운 테스트 만들기

오른쪽 상단의 New File을 선택하면

  • 파일 이름
  • App ID

만 입력하면 새로운 테스트 파일이 생성됩니다.

생성이 완료되면 launchApp이 포함된 기본 템플릿이 자동으로 작성되고, 다음 명령을 입력할 수 있도록 자동완성도 함께 제공됩니다.


가장 편리한 기능, 요소 자동완성

1편에서는 Compose 코드에 작성된

 
Modifier.testTag("btn_increment")
 

를 직접 확인하거나 AI에게 알려줘야 했습니다.

하지만 Studio에서는 이런 과정이 필요하지 않습니다.

예를 들어 YAML에서

 
- tapOn:
 

까지만 입력하면 현재 단말 화면에 존재하는 모든 요소의 ID가 자동완성으로 나타납니다.

예를 들어

btn_incre
 

까지만 입력하면

btn_increment
 

가 자동으로 추천됩니다.

더 편리한 점은 해당 요소가 실제 화면 어디에 있는지 즉시 표시된다는 것입니다.


선택한 요소를 화면에서 바로 확인

자동완성 목록에서 btn_increment를 선택하면

왼쪽 미러링 화면의 +1 버튼이 강조 표시됩니다.

따라서

  • 내가 선택한 요소가 맞는지
  • 다른 버튼과 헷갈리지 않는지

를 눈으로 바로 확인할 수 있습니다.

assertVisible 역시 동일합니다.

 
- assertVisible:
    id:
 

를 입력하면 검증 가능한 요소 목록이 자동완성으로 표시되고, 선택한 요소가 화면에서 함께 강조됩니다.

Compose 코드를 열어 testTag를 확인할 필요가 없습니다.


완성된 테스트는 기존 YAML과 동일하다

Studio에서 작성한 테스트 역시 일반 Maestro YAML과 완전히 동일합니다.

 
appId: com.example.maestrosample
---
- launchApp:
    clearState: true

- tapOn:
    id: "btn_increment"

- assertVisible:
    id: "text_counter"
    text: "1"
 

즉,

  • Studio에서 만들든
  • AI가 생성하든
  • 직접 작성하든

모두 동일한 포맷을 사용합니다.


작성한 테스트를 바로 실행하기

YAML을 저장한 뒤 Run Test 버튼을 누르면 즉시 테스트가 실행됩니다.

별도로 터미널을 열거나 CLI 명령을 입력할 필요가 없습니다.

실행 중에는

  • 현재 진행 중인 Step
  • 성공 여부
  • 실패 위치

를 실시간으로 확인할 수 있습니다.

테스트가 모두 끝나면 다음과 같이 결과가 표시됩니다.

Your flow passed!
 

간단한 테스트라면 작성부터 실행까지 몇 초 안에 확인할 수 있습니다.


CLI와 함께 사용할 때 주의할 점

Studio를 사용한 뒤 다시 CLI에서

 
maestro test .maestro/
 

를 실행하면 아래와 같은 오류가 발생할 수 있습니다.

dev.mobile.maestro was not installed
 

이는 CLI와 Studio가 서로 다른 버전의 드라이버 앱을 단말에 설치하면서 발생하는 문제입니다.

이 경우에는 한 번만 아래 옵션을 추가하여 실행하면 해결됩니다.

 
maestro test .maestro/ --reinstall-driver
 

드라이버가 다시 설치되면서 이후에는 정상적으로 테스트를 수행할 수 있습니다.


AI 방식과 Studio 방식 비교

항목AI에게 작성 요청Maestro Studio
적합한 상황 여러 시나리오를 한 번에 생성 화면을 보며 하나씩 작성
요소 ID AI가 코드 분석 또는 개발자가 직접 제공 자동완성으로 바로 선택
테스트 작성 빠르게 초안 생성 화면을 확인하며 수정
실행 CLI 스크립트 실행 Run Test 버튼으로 즉시 실행

두 방법은 경쟁 관계라기보다 서로 보완하는 관계입니다.

실제 개발에서는

  1. AI에게 여러 테스트 시나리오를 생성하고
  2. Studio에서 요소 ID를 확인하며 수정한 뒤
  3. 저장소의 .maestro 폴더에 저장하여
  4. maestro test .maestro/로 전체 테스트를 실행하는 방식이 가장 효율적이었습니다.

이번 예제에서도 Studio에서 작성한 05_studio_demo.yaml을 기존 테스트들과 함께 실행하여 5개의 테스트가 모두 정상 통과하는 것을 확인했습니다.


마무리

이번 글에서는 Maestro Studio를 이용해 화면을 직접 보면서 테스트를 작성하는 방법을 살펴보았습니다.

정리하면 다음과 같습니다.

  1. Maestro Studio는 이제 별도의 데스크톱 애플리케이션으로 제공됩니다.
  2. 프로젝트를 열면 연결된 단말이 자동으로 인식됩니다.
  3. 화면 요소를 자동완성으로 선택할 수 있어 testTag를 직접 찾을 필요가 없습니다.
  4. 작성한 테스트는 즉시 실행하여 결과를 확인할 수 있습니다.
  5. 생성되는 YAML은 AI가 작성한 파일과 동일한 형식이므로 함께 관리할 수 있습니다.

AI를 활용하면 테스트 초안을 빠르게 만들 수 있고, Maestro Studio를 활용하면 화면을 보면서 손쉽게 수정하고 검증할 수 있습니다. 두 가지를 함께 사용하면 반복적인 UI 테스트 작성 시간을 크게 줄일 수 있습니다.

다음 글에서는 AI가 생성한 테스트를 Maestro Studio에서 수정하고 검증하는 실전 워크플로우를 실제 프로젝트 규모에 맞춰 소개하겠습니다.

반응형