Android 테스트 스테이션의 가상 기기

Android 테스트 스테이션은 실제 Android 기기 없이 테스트를 실행하는 데 사용할 수 있는 Cuttlefish 가상 기기를 지원합니다. Cuttlefish는 하드웨어에 독립적인 기능을 테스트하는 데 적합합니다. 가상 기기 사용을 시작하기 전에 사용자 가이드에 따라 Android 테스트 스테이션을 설치합니다.

Cuttlefish 종속 항목 설치

다음 명령어를 실행하여 필요한 커널 모듈이 로드되었는지 확인합니다.

sudo modprobe -a kvm tun vhost_net vhost_vsock

가상 기기로 Android 테스트 스테이션 시작

가상 기기를 사용 설정하려면 다음을 실행합니다.

mtt start --max_local_virtual_devices N

N은 ATS가 동시에 할당할 수 있는 최대 가상 기기 수입니다. 기본값은 0입니다.

가상 기기로 테스트 실행

기기 선택

기기 목록에서 ATS는 가상 기기를 실제 일련번호 대신 자리표시자로 표시합니다. 자리표시자는 HOSTNAME:local-virtual-device-ID 형식으로 표시합니다. 상태는 Available 또는 Allocated입니다. 자리표시자가 Available이면 가상 기기가 실행되고 있지 않으며 테스트에 할당할 수 있음을 나타냅니다.

가상 기기 선택

그림 1. 가상 기기 선택

기기 작업 추가

하나 이상의 로컬 가상 기기를 선택하면 연결된 기기 작업이 목록에 자동으로 추가됩니다. 작업은 가상 기기를 만드는 데 필요한 TradeFed 매개변수와 테스트 리소스로 구성됩니다.

가상 기기 작업

그림 2. 가상 기기의 기기 작업

테스트 리소스 설정

Cuttlefish 가상 기기에는 가상 머신 도구, 이미지, Acloud라는 세 가지의 테스트 리소스가 필요합니다. 일반적인 Cuttlefish 빌드(예: ci.android.comaosp_cf_x86_64_phone)에서 가상 머신 도구는 cvd-host_package.tar.gz에 패키징되며 이미지는 aosp_cf_x86_64_phone-img-*.zip에 패키징됩니다. Acloud 바이너리는 ATS에 빌드되며 모든 버전의 Cuttlefish와 호환됩니다. Acloud 바이너리의 기본 다운로드 URL은 디버깅 목적일 때만 변경하면 됩니다.

가상 기기 테스트 리소스

그림 3. 가상 기기의 테스트 리소스

테스트 실행 보기

kernel.log, host_log.txt, launcher.log를 비롯하여 기기 로그는 출력 파일 폴더에 수집됩니다. View Output Files를 클릭하여 결과를 확인합니다.

테스트 실행 결과

그림 4. 테스트 실행 결과