Firebase CLI를 사용하여 빌드를 테스터에 배포할 수 있습니다. CLI 도구를 사용하면 빌드에 테스터와 출시 노트를 지정하고 이에 따라 빌드를 배포할 수 있습니다.
앱을 테스터에 배포하려면 Firebase CLI를 사용하여 IPA 파일을 업로드합니다.
- 최신 버전의 Firebase CLI를 설치하거나 업데이트합니다. 사용 중인 OS에 해당하는 CLI의 독립 실행형 바이너리를 다운로드하는 것이 좋습니다. 로그인하여 프로젝트에 액세스할 수 있는지 테스트합니다.
- Firebase Console의 App Distribution 페이지에서 배포하려는 앱을 선택한 후 시작하기를 클릭합니다.
-
appdistribution:distribute
명령어를 실행하여 앱을 업로드하고 테스터에게 배포합니다. 다음 매개변수를 사용하여 배포를 구성합니다.appdistribution:distribute 옵션 --app
필수 항목: 앱의 Firebase 앱 ID입니다. Firebase Console의 일반 설정 페이지에서 앱 ID를 찾을 수 있습니다.
--app 1:1234567890:ios:0a1b2c3d4e5f67890
--token
Firebase CLI를 사용하여 CI 환경을 인증할 때 출력되는 갱신 토큰입니다. 자세한 내용은 CI 시스템과 함께 CLI 사용을 참조하세요.
--token "$FIREBASE_TOKEN"
--release-notes
--release-notes-file
이 빌드의 출시 노트입니다.
출시 노트를 직접 지정할 수 있습니다.
--release-notes "Text of release notes"
또는 일반 텍스트 파일의 경로를 지정합니다.
--release-notes-file "/path/to/release-notes.txt"
--testers
--testers-file
초대할 테스터의 이메일 주소입니다.
쉼표로 구분된 이메일 주소 목록으로 테스터를 지정할 수 있습니다.
--testers "ali@example.com, bri@example.com, cal@example.com"
또는 쉼표로 구분된 이메일 주소 목록이 포함된 일반 텍스트 파일의 경로를 지정할 수 있습니다.
--testers-file "/path/to/testers.txt"
--groups
--groups-file
초대할 테스터 그룹입니다. 테스터 관리를 참조하세요. Firebase Console에서 찾을 수 있는
그룹 별칭 을 사용하여 그룹을 지정합니다.쉼표로 구분된 목록으로 그룹을 지정할 수 있습니다.
--groups "qa-team, trusted-testers"
또는 쉼표로 구분된 그룹 이름 목록이 포함된 일반 텍스트 파일의 경로를 지정할 수 있습니다.
--groups-file "/path/to/groups.txt"
--debug
상세 로그 출력을 표시하려는 경우 포함할 수 있는 플래그입니다.
--test-devices
--test-devices-file
다음 배포 유형은 자동 테스터 베타 기능의 일부입니다.
빌드를 배포할 테스트 기기입니다. 자동 테스트를 참조하세요.
쉼표로 구분된 이메일 주소 목록으로 테스터를 지정할 수 있습니다.
--test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"
또는 세미콜론으로 구분된 테스트 기기 목록이 포함된 일반 텍스트 파일의 경로를 지정할 수 있습니다.
--test-devices-file: "/path/to/test-devices.txt"
--test-username
자동 테스트 중에 사용할 자동 로그인의 사용자 이름입니다.
--test-password
--test-password-file
자동 테스트 중에 사용할 자동 로그인 비밀번호입니다.
또는 비밀번호가 포함된 일반 텍스트 파일의 경로를 지정할 수 있습니다.
--test-password-file: "/path/to/test-password.txt"
--test-username-resource
자동 테스트 중에 사용할 자동 로그인 사용자 이름 필드의 리소스 이름입니다.
--test-password-resource
자동 테스트 중에 사용할 자동 로그인 비밀번호 필드의 리소스 이름입니다.
--test-non-blocking
자동 테스트를 비동기식으로 실행합니다. Firebase Console로 이동하여 자동 테스트 결과를 확인합니다.
예를 들면 다음과 같습니다.
firebase appdistribution:distribute test.ipa \ --app 1:1234567890:ios:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
출시 버전 업로드 후 Firebase CLI는 다음 링크를 출력합니다. 다음 링크를 사용하면 바이너리를 관리하고 테스터 및 다른 개발자가 올바른 출시 버전을 사용할 수 있습니다.
firebase_console_uri
- 단일 출시 버전을 표시하는 Firebase Console의 링크입니다. 이 링크를 조직의 다른 개발자와 공유할 수 있습니다.testing_uri
- 테스터가 출시 노트를 보고 기기에 앱을 설치할 수 있는 테스터 환경(iOS 웹 클립)의 출시 버전 링크입니다. 테스터가 링크를 사용하려면 출시 버전에 액세스할 수 있어야 합니다.binary_download_uri
- 앱 바이너리(IPA 파일)를 직접 다운로드하고 설치하는 서명된 링크입니다. 링크는 1시간 후에 만료됩니다.
테스터 및 그룹 관리
출시 버전 배포 외에도
appdistribution:testers:add
및appdistribution:testers:remove
를 사용하여 새 테스터를 초대하고 Firebase 프로젝트에서 기존 테스터를 삭제할 수 있습니다.Firebase 프로젝트에 테스터를 추가한 후 개별 출시 버전에 테스터를 추가할 수 있습니다. 삭제된 테스터는 프로젝트의 출시 버전에 더 이상 액세스할 수 없습니다. 최근에 삭제된 테스터는 일정 기간 동안 출시 버전에 계속 액세스할 수 있습니다.
예를 들면 다음과 같습니다.
firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com
테스터 이메일은 공백으로 구분해야 합니다. 또한
--file /path/to/testers.txt
를 사용하여 테스터를 지정할 수 있습니다.테스터가 많으면 그룹 사용을 고려해야 합니다.
appdistribution:group:create
및appdistribution:group:delete
를 사용하여 Firebase 프로젝트에서 그룹을 만들거나 삭제할 수 있습니다.--group-alias
를 사용하여appdistribution:testers:add
및appdistribution:testers:remove
명령어의 그룹을 지정합니다.예를 들면 다음과 같습니다.
firebase appdistribution:group:create "QA team" qa-team
firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:group:delete qa-team
빌드를 배포한 후에는 Firebase Console의 App Distribution 대시보드에서 150일(5개월) 동안 사용할 수 있습니다. 빌드가 만료되기 30일 전부터 Console 및 테스트 기기의 빌드 테스트 목록 모두에 만료 알림이 표시됩니다.
신규 테스터는 앱 테스트를 시작할 수 있는 이메일 초대를 받으며 기존 테스터는 새 빌드가 테스트될 준비가 완료되었다는 이메일 알림을 받습니다. 테스트 앱을 설치하는 방법을 알아보려면 테스터로 설정을 참조하세요. Firebase Console에서 각 테스터 상태(초대 수락 여부, 앱 다운로드 여부 등)를 모니터링할 수 있습니다.
테스터는 초대 유효 기간(30일) 만료 전에 앱 테스트를 수락해야 합니다. 초대 유효 기간이 만료되기 5일 전부터 Firebase Console의 출시 버전 테스터 옆에 만료 알림이 표시됩니다. 테스터 행의 드롭다운 메뉴를 사용하여 초대를 재전송하면 갱신할 수 있습니다.
다음 단계
수동 또는 프로그래매틱 방식으로 기기를 더 등록하려면 추가 iOS 기기 등록을 참조하세요.
CI/CD 및 fastlane을 사용하여 QA 테스터에 Apple 앱을 배포할 때의 권장사항을 알아봅니다.