Android 스튜디오 여정

Android 스튜디오용 여정을 만들면 자연어를 사용하여 각 테스트의 단계와 어설션(여정이라고 함)을 설명할 수 있으므로 엔드 투 엔드 테스트를 쉽게 작성하고 유지할 수 있습니다. Gemini의 비전 및 추론 기능을 활용하면 자연어로 작성된 단계가 Gemini가 앱에서 실행하는 작업으로 변환되므로 여정을 쉽게 작성하고 이해할 수 있습니다. 또한 더 복잡한 어설션을 작성하고 설명할 수 있습니다. Gemini는 기기에서 확인한 내용을 기반으로 어설션을 평가하여 여정의 통과 여부를 결정합니다.

또한 Gemini는 목표를 달성하기 위해 실행할 작업에 대해 추론하므로 여정은 앱의 레이아웃이나 동작에 미묘한 변경사항이 있을 때 더 탄력적입니다. 따라서 여러 버전의 앱과 여러 기기 구성에서 실행할 때 불안정한 테스트가 줄어듭니다.

Android 스튜디오에서 바로 로컬 또는 원격 Android 기기를 대상으로 여정을 작성하고 실행합니다. IDE는 여정을 만드는 새로운 편집기 환경과 Gemini의 추론 및 여정 실행을 더 잘 따르는 데 도움이 되는 리치 결과를 제공합니다.

여정 작성

Android 스튜디오에서는 파일 템플릿과 새로운 편집기 환경을 제공하여 여정을 쉽게 만들고 수정할 수 있도록 지원합니다. 여정은 XML 문법을 사용하여 작성되며 여정 설명과 단계를 구성합니다.

여정을 만들고 수정하려면 다음 단계를 따르세요.

  1. Android 스튜디오의 Project 패널에서 여정을 작성할 앱 모듈을 마우스 오른쪽 버튼으로 클릭합니다.
  2. New > Test > Journey File을 선택합니다.
  3. 대화상자가 표시되면 여정의 이름과 설명을 입력합니다.
  4. OK(확인)을 클릭합니다. Android 스튜디오는 선택한 이름으로 여정의 XML 파일을 만듭니다. Code 뷰를 사용하여 XML을 직접 수정하거나 Design 뷰를 사용하여 수정 환경을 개선할 수 있습니다.
  5. Design 뷰에서 여정을 볼 때 텍스트 필드를 사용하여 여정의 각 단계를 설명합니다. 각 단계에는 Gemini가 실행할 설명적 작업 또는 Gemini가 평가할 어설션이 포함될 수 있습니다.
  6. 키보드의 Enter 키를 눌러 동일한 여정에서 새 프롬프트를 시작합니다. 정의하려는 여정의 각 단계에 대해 필요에 따라 이 작업을 반복할 수 있습니다.

여정 작성을 위한 도움말

여정을 상세하고 체계적인 방식으로 작성하면 Gemini가 의도한 여정을 더 결정론적인 방식으로 정확하게 실행할 가능성이 높아집니다. 다음은 여정을 더 효과적으로 작성하는 데 도움이 되는 몇 가지 팁입니다.

  • 명시적인 단일 작업 피하기: Gemini는 여정의 각 단계를 여러 작업으로 변환할 수 있습니다. 모델은 복잡한 목표를 달성하도록 학습되므로 'X를 클릭'과 같이 명시적인 단일 작업인 프롬프트를 작성하지 마세요.
  • 어설션을 작업과 구분: Gemini는 앱의 상태를 지속적으로 평가하여 여정을 계속할 수 있는 '올바른' 상태인지 확인합니다. 그러나 더 복잡한 어설션은 별도의 단계로 정의해야 할 수 있습니다. 또한 'Verify that', 'Assert that' 또는 'Check that'와 같은 주요 문구를 사용하여 각 프롬프트를 시작하여 이 단계가 어설션임을 Gemini에 알립니다.
  • 스와이프로 Gemini 지시: 탭 또는 키보드 입력과 같은 기본 상호작용 외에도 Gemini는 특정 방향으로 화면을 스와이프해야 하는 작업을 지원합니다. 예를 들어 콘텐츠를 스크롤하거나 일부 UI를 닫으려면 스와이프 작업의 방향과 의도를 설명하기만 하면 됩니다. 기본적으로 Gemini는 화면 중앙에서 스와이프하지만 기기 화면의 다른 부분에서 스와이프하도록 안내할 수 있습니다.
  • 기타 복잡한 상호작용 및 구성 변경 피하기: Gemini는 현재 다중 손가락 동작, 화면 회전, 접기 작업과 같은 모든 상호작용 및 구성 변경을 지원하지 않습니다. 담당 팀에서는 Gemini 기능을 개선하기 위해 노력하고 있습니다.

여정 실행

다른 계측 테스트와 마찬가지로 사용 가능한 로컬 또는 원격 기기에서 여정을 실행할 수 있으며 Android 스튜디오는 여정의 실행을 이해하는 데 도움이 되는 풍부한 결과를 생성합니다.

여정을 테스트하려면 다음 단계를 따르세요.

  1. 계측 테스트를 실행할 때와 같이 기본 툴바에서 대상 기기를 선택합니다.
  2. 테스트하려는 여정 XML 파일로 이동하여 편집기에서 엽니다.
  3. 편집기에서 다음 중 하나를 실행합니다.
    1. Design 뷰에 있는 경우 Run Journey를 클릭합니다.
    2. Code 뷰에 있는 경우 XML에서 여정 이름이 정의된 위치 옆에 있는 여백에서 Run 을 클릭합니다.

Android 스튜디오가 여정 테스트 구성을 만들고 대상 기기에서 실행합니다. 실행 중에 Android 스튜디오는 앱을 빌드하고 배포하며 Gemini에 연결하여 여정의 각 단계에서 취할 작업을 결정합니다.

여정을 실행하는 동안 편집기에도 제한된 결과가 표시됩니다(예: 여정의 각 단계 실행 중 스크린샷, 취해진 조치, 추론). 편집기에서 썸네일 위로 마우스를 가져가면 자세한 정보가 표시됩니다. 이는 여정에서 프롬프트를 반복할 때 유용할 수 있습니다.

결과 보기

Android 스튜디오에서 여정 테스트를 완료하면 테스트 결과 패널이 자동으로 표시되어 결과를 보여줍니다.

Android 스튜디오에서 실행할 수 있는 다른 계측 테스트와 비교하면 여정의 결과가 표시되는 방식에 약간의 차이가 있습니다.

  • 테스트 패널은 여정을 개별 단계로 분류합니다. 각 단계를 클릭하여 Gemini에서 해당 단계를 실행한 방법에 관해 자세히 알아볼 수 있습니다.
  • 결과 패널에는 Gemini가 여정을 이해하고 추론한 방법과 실행 방법을 파악하는 데 도움이 되는 풍부한 정보가 표시됩니다.
  • Gemini로 전송된 스크린샷은 단계의 각 작업에 시각적 지원을 위해 표시됩니다.
  • 취해진 각 조치와 Gemini가 해당 조치를 취한 이유에 대한 추론은 각 스크린샷 옆에 설명되어 있습니다.
  • 단계의 각 작업에는 번호가 지정됩니다.

알려진 문제

  • 여정을 테스트할 때는 기본적으로 앱의 모든 권한이 부여됩니다.
  • Android 15 (API 수준 35)를 실행하는 기기에서 여정을 테스트할 때 기기에 'AndroidX 크롤러'에 관한 '안전하지 않은 앱 차단됨'이라는 경고가 표시될 수 있습니다. 설치를 클릭하여 이 검사를 건너뛸 수 있습니다. 또는 온디바이스 개발자 옵션을 구성하고 USB를 통해 앱 확인 옵션을 사용 중지할 수 있습니다.
  • 여정 파일은 현재 프로젝트 패널의 Android 뷰에 표시되지 않습니다. 프로젝트에서 여정 파일을 보려면 Project 뷰를 사용하세요.
  • 여정 내 여러 작업이 정확히 동일한 프롬프트를 공유하는 경우 여정 편집기에 표시되는 테스트 결과가 잘못될 수 있습니다. 특히 중복 프롬프트가 있는 모든 작업에는 해당 프롬프트의 가장 최근에 업데이트된 인스턴스와 연결된 테스트 결과가 표시됩니다. 이 문제를 해결하려면 고유한 접두사 또는 접미사를 추가하는 등 각 작업에 고유한 프롬프트를 지정하세요.
  • 새 에뮬레이터에 키보드가 두 번째로 로드되면 스타일러스 팝업이 표시됩니다. 이 팝업은 일반적으로 텍스트 필드와 상호작용하는 테스트가 실패하게 합니다. 이 경우 팝업을 닫고 여정을 다시 실행합니다.
  • 앱 크롤러 아티팩트가 상담사 근거에 표시되는 경우가 있습니다.
  • 여정 실행이 IllegalStateException로 실패하는 경우가 있습니다. 이 경우 테스트 결과를 클릭하여 전체 오류를 확인할 수 있습니다.
  • Android Gradle 플러그인 (com.android.application)이 최상위 build.gradle 파일에 정의되어 있지 않으면 여정을 실행할 때 다음 오류가 표시될 수 있습니다.

    Failed to apply plugin class 'com.android.tools.journeys.JourneysGradlePlugin'
    

    이 문제를 해결하려면 플러그인이 최상위 build.gradle 파일에 정의되어 있는지 확인합니다. 자세한 내용은 Android 빌드 시스템 구성을 참고하세요.