Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

iOS 용 Firebase Test Lab 시작하기

Firebase Test Lab을 사용하면 다양한 기기 및 구성에서 앱의 품질을 테스트 할 수 있습니다. 이 가이드는 Test Lab의 주요 개념, iOS 제품 및 테스트 시작 방법에 대한 지침에 대한 개요를 제공합니다.

Test Lab 할당량 및 요금제에 대한 자세한 내용은 사용량, 할당량, 가격을 참조하세요.

주요 개념 및 용어

선택한 기기 및 구성에 대해 테스트 또는 일련의 테스트 사례를 실행하면 Test Lab은 앱에 대해 일괄 적으로 테스트를 실행 한 다음 결과를 테스트 매트릭스 로 표시합니다.

장치 × 테스트 실행 = 테스트 매트릭스

장치
휴대 전화, 태블릿 또는 웨어러블 기기와 같이 테스트를 실행하는 실제 또는 가상 기기 (Android 만 해당). 테스트 매트릭스의 기기는 기기 모델, OS 버전, 화면 방향 및 로케일 (지역 및 언어 설정이라고도 함)으로 식별됩니다.
테스트, 테스트 실행
장치에서 실행할 테스트 (또는 일련의 테스트 사례)입니다. 기기 당 하나의 테스트를 실행하거나 선택적으로 테스트를 분할하고 다른 기기에서 테스트 사례를 실행할 수 있습니다.
테스트 매트릭스
테스트 실행에 대한 상태 및 테스트 결과를 포함합니다. 행렬의 테스트 실행이 실패하면 전체 행렬이 실패합니다.

1 단계 : Test Lab에 업로드 할 테스트 준비

Test Lab에서 다음 테스트를 실행할 수 있습니다. 모든 테스트 유형은 물리적 장치에서 최대 45 분까지 실행될 수 있으며 포착되지 않은 예외로 인해 테스트 실패가 발생합니다.

  • XCTest (XCUITests 포함) : XCTest 프레임 워크를 사용하여 작성한 단위 테스트입니다. Test Lab에서 실행할 XCTest를 수정하는 방법 은 XCTest 만들기 를 참조하세요.

  • 게임 루프 테스트 : 게임 앱에서 플레이어 동작을 시뮬레이션하기 위해 '데모 모드'를 사용하는 테스트입니다. 이는 게임이 사용자에게 잘 작동하는지 확인하는 빠르고 확장 가능한 방법입니다. 게임 루프 테스트 실행을 선택하면 다음을 수행 할 수 있습니다.

    • 게임 엔진에 고유 한 테스트를 작성합니다.

    • 다른 UI 또는 테스트 프레임 워크에 대해 동일한 코드를 작성하지 마십시오.

    • 선택적으로 단일 테스트 실행에서 실행할 여러 루프를 만듭니다. 레이블을 사용하여 루프를 구성하여 추적하고 특정 루프를 다시 실행할 수도 있습니다.

    Test Lab에서 테스트를 실행하는 방법에 대한 지침 은 게임 루프 테스트 실행을 참조하세요.

2 단계 : 테스트를 실행할 도구 선택

다음 도구를 선택하여 테스트를 실행할 수 있습니다.

  • Firebase 콘솔을 사용하면 어디서나 앱을 업로드하고 테스트를 시작할 수 있습니다. 이 도구 사용에 대한 안내 는 Firebase 콘솔테스트를 참조하세요.

  • gcloud 명령 줄 인터페이스 (CLI)를 사용하면 명령 줄에서 대화 형으로 테스트를 실행할 수 있으며 자동화 된 빌드 및 테스트 프로세스의 일부인 스크립팅에도 적합합니다. 이 도구 사용에 대한 안내 는 gcloud CLI테스트를 참조하세요.

  • 실제 장치에서 테스트하기 전에 시뮬레이터 에서 로컬로 테스트를 실행하여 의도 한대로 작동하는지 확인하십시오. 지침은 로컬 테스트를 참조하십시오.

3 단계 : 테스트 장치 지정

Test Lab을 사용하면 Google 데이터 센터에서 호스팅되는 다양한 iOS 기기 및 모델에서 앱에 대해 테스트를 실행할 수 있습니다. 자세한 내용은 사용 가능한 장치를 참조하십시오 .

4 단계 : 테스트 결과 검토

테스트를 시작하는 방법에 관계없이 모든 테스트 결과는 Test Lab에서 관리하며 온라인으로 볼 수 있습니다.

테스트 결과 요약 은 자동으로 저장되며 Firebase 콘솔에서 볼 수 있습니다. 여기에는 테스트 케이스 별 동영상, 스크린 샷, 통과, 실패 또는 비정상적인 결과를 얻은 테스트 수 등 테스트와 가장 관련있는 데이터가 포함됩니다.

원시 테스트 결과 에는 테스트 로그 및 앱 실패 세부 정보가 포함되며 Google Cloud 버킷에 자동으로 저장됩니다. 버킷을 지정하면 스토리지 비용을 부담해야합니다. 버킷을 지정하지 않으면 Test Lab에서 무료로 버킷을 만듭니다.

자세한 내용은 Firebase Test Lab 결과 분석을 참조하세요 .

장치 정리

Google은 앱 데이터의 보안을 매우 중요하게 생각합니다. 업계 표준 모범 사례에 따라 새로운 테스트를 실행할 준비가되었는지 확인하기 위해 모든 테스트 실행 후 앱 데이터를 제거하고 물리적 장치의 시스템 설정을 재설정합니다. 사용자 지정 복구 이미지로 플래시 할 수있는 장치의 경우 테스트 실행 사이에 이러한 장치를 플래시하여 한 단계 더 나아갑니다.

Test Lab에서 사용하는 가상 기기의 경우 기기 인스턴스는 사용 후 삭제되므로 각 테스트 실행에서 새 가상 기기 인스턴스를 사용합니다.


Test Lab 및 모바일 광고

디지털 광고 제공 업체 (예 : 광고 네트워크, 수요 측 플랫폼) 및 디지털 광고 제공 업체를 사용하거나 협력하는 앱 개발자의 경우 :

Test Lab은 개발자에게 앱 테스트를 자동화하는 확장 가능한 앱 테스트 인프라를 제공합니다. 안타깝게도이 기능은 사기 광고 수익을 생성하도록 설계된 악성 앱에서 오용 될 수 있습니다.

이 문제를 완화하려면 :

  • 앱 개발자는 Test Lab을 포함하여 테스트 제공 업체에 속한 기기에서 생성 된 수익과 모든 해당 트래픽을 필터링하기 위해 협력하는 모든 디지털 광고 제공 업체에 알려야합니다.

  • 디지털 광고 제공 업체는 다음 IP 주소 블록 에서 발생하는 트래픽을 필터링하여 Test Lab에서 생성 된 모든 해당 트래픽과 광고 수익을 필터링 할 수 있습니다 (gcloud CLI에서 gcloud beta firebase test ip-blocks list 명령어를 사용하여이 목록에 액세스 할 수도 있습니다. ) :

플랫폼 및 장치 유형 CIDR IP 주소 블록
Android 및 iOS 물리적 장치

108.177.6.0/23

70.32.147.112/28(2020 년 3 월 추가됨)

74.125.122.32/29(2020 년 4 월 추가됨)

108.177.29.80/28(2020 년 4 월 추가됨)

216.239.44.24/29(2020 년 4 월 추가됨)

Android 가상 장치

34.68.194.64/29(2019 년 11 월 추가됨)

34.69.234.64/29(2019 년 11 월 추가됨)

34.73.34.72/29(2019 년 11 월 추가됨)

34.73.178.72/29(2019 년 11 월 추가됨)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27(2019 년 7 월 추가됨)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29