Android 가상 기기로 앱 테스트

이제 Firebase Test Lab의 새로운 가상 기기 베타 프로그램을 통해 가상 기기 테스트가 가능해졌습니다. 가상 기기는 특정 Android Nexus 기기를 실제와 가깝게 가상으로 시뮬레이션합니다. 이러한 기기는 일정 예약 시 가용성이 가장 높으며 일상적인 개발 또는 연속 통합 테스트에 가장 적합합니다.

가상 기기의 장점

가상 기기는 실제 기기와 비교하여 다음과 같은 장점이 있습니다.

  • 높은 가용성: 가상 기기로 테스트하면 테스트 실행 및 테스트 결과 확인이 더욱 빨라집니다. 가상 기기는 요청에 따라 생성되므로 테스트가 거의 즉시 시작되어 앱을 빠르게 검증할 수 있습니다. 따라서 가상 기기는 앱의 소규모 업데이트 테스트나 회귀 테스트에 매우 적합합니다.
  • 테스트 시간 연장: 실제 기기를 사용하는 테스트는 기기당 30분으로 제한됩니다. 가상 기기는 최대 60분의 테스트 시간을 지원하므로 보다 긴 테스트를 실행하고 특히 앱의 성능을 측정하는 데 적합합니다.
  • 비용 절감: 가상 기기의 사용료는 앱을 테스트하는 데 사용된 가상 기기마다 시간당 1달러입니다. 가상 기기는 비용이 저렴하므로 연속 통합 시스템을 사용한 일일 테스트 또는 코드 체크인 전 테스트에 적합합니다. 자세한 내용은 Test Lab 결제를 참조하세요.

가상 기기로 앱을 테스트하는 방법

가상 기기로 앱을 테스트하는 방법은 실제 기기를 사용할 때와 동일합니다. 테스트 측정기준을 선택하여 테스트 매트릭스를 구성할 때 가상 기기를 선택하기만 하면 됩니다.

앱 테스트를 위한 권장사항

가상 기기는 Test Lab으로 앱을 테스트할 때 선택의 범위를 넓혀 줍니다. 앱 개발의 모든 단계에서 앱을 테스트할 때 권장되는 접근법은 다음과 같습니다.

  • Android 스튜디오: 앱을 개발할 때 Android 스튜디오 에뮬레이터 또는 연결된 실제 기기를 사용하여 각 빌드를 최초로 검증합니다. 도구 작동 테스트가 필요한 경우 Android 스튜디오에서 Test Lab이 제공하는 실제 또는 가상 기기를 사용하여 테스트를 실행할 수도 있습니다.
  • 일반 저해상도 중간 DPI(MDPI) 가상 기기로 Test Lab 사용: Test Lab 일반 저해상도 MDPI 휴대전화 가상 기기로 다른 가상 기기보다 빠르게 앱에서 Robo 테스트 및 도구 작동 테스트를 실행할 수 있습니다. MDPI 가상 기기는 API 수준 23이상에서 사용할 수 있습니다. gcloud 명령줄 인터페이스에서 이 기기를 사용하려면 NexusLowRes 모델 ID를 사용하세요.
  • 공유 프로젝트에서 코드를 변경할 때마다 지속적 통합(CI) 시스템 사용: 대규모 프로젝트를 진행하거나 GitHub 등의 사이트를 통해 공유되는 프로젝트에 참여하는 경우, 지속적 통합(CI) 시스템을 사용하여 CI 시스템이 실행될 때마다 또는 각각의 가져오기 요청 전에 가상 기기로 앱을 테스트하는 것이 좋습니다. Test Lab과 CI 시스템 사용에 대한 자세한 내용은 지속적 통합 시스템과 함께 Android용 Test Lab 사용을 참조하세요.
  • 중요한 앱 업데이트 출시 전: UI와 기능이 크게 바뀌는 앱 업데이트를 출시하기 전에는 Test Lab을 사용하여 실제 기기로 앱을 테스트하는 것이 좋습니다. 이렇게 하면 널리 사용되는 다양한 실제 기기에서 앱이 정상적으로 실행되는지를 확인하고, 가상 기기로 시뮬레이션할 수 없는 실제 기기 기능에 의존하는 앱 기능까지 모두 테스트할 수 있습니다. 이러한 기능의 자세한 내용은 알려진 제한사항을 참조하세요.

알려진 제한사항

실제 기기의 일부 기능은 현재 가상 기기로 시뮬레이션할 수 없거나 몇 가지 제한사항이 적용됩니다. 다음 표에서는 현재 가상 기기에서 사용할 수 없거나 특정한 제한사항이 있는 기능을 보여줍니다.

기능 세부정보
비 x86 애플리케이션 바이너리 인터페이스(ABI) 가상 기기는 x86 ABI만 지원합니다. Android NDK로 개발하는 경우 x86 명령 집합용 코드를 생성해야 합니다. 자세한 내용은 ABI 관리를 참조하세요.

참고: 테스트 매트릭스의 테스트 중 일부가 무효로 표시되는 경우 앱에서 네이티브 ARM 코드를 사용하기 때문일 수 있습니다.
동영상 인코딩 및 디코딩 현재는 가상 기기에서 H264 동영상 디코딩만 지원됩니다. 동영상 인코딩은 지원되지 않습니다.

참고: 현재 가상 기기로 테스트할 때는 동영상이 초당 1프레임으로 재생되므로 실제 기기로 테스트할 때보다 거칠게 보입니다.
OpenGL ES 3.x OpenGL ES 3.x 이상의 그래픽 라이브러리는 가상 기기에서 사용할 수 없습니다.
Camera HAL v3 Android Camera HAL v3.0에 대한 자세한 내용은 Camera HAL v3 개요를 참조하세요.

다음에 대한 의견 보내기...

도움이 필요하시나요? 지원 페이지를 방문하세요.