Internal Testing: 개념, 작동 방식 및 트랙 설정 방법

저자: IT Sectr 게시일: 2026-04-19 읽는 시간: 8 분

Internal Testing은 앱 스토어의 폐쇄형 테스트 트랙으로, 내부 개발 팀과 QA 엔지니어만 사용할 수 있습니다. Google Play 및 App Store에서 Internal Testing은 검토 없이 빌드를 게시하고 제한된 참가자 그룹에게 즉시 배포할 수 있습니다. Google Android Developers, 2024에 따르면 60%의 팀이 베타 트랙 및 프로덕션으로 출시하기 전 첫 번째 단계로 Internal Testing을 사용합니다. 이는 새로운 기능을 테스트하기 위한 최소 진입 기준입니다.

핵심 사항

  • Internal Testing — 팀 내 최대 100명의 참가자 테스트용 트랙
  • Google Play — 최대 100명의 테스터, 검토 불필요, 즉시 전달
  • App Store — TestFlight, 내부 테스터 최대 100명 제한
  • 즉시 배포 — 업로드 후 5~15분 내에 빌드 사용 가능
  • QA 파이프라인 — 오픈 베타 및 프로덕션 전 첫 번째 단계

Internal Testing이란?

Internal Testing은 Google Play Console 및 TestFlight의 테스트 트랙으로, 개발 팀 구성원 간에 빌드를 배포하기 위해 설계되었습니다. 오픈 베타 테스트와 달리 Internal Testing에 대한 액세스는 개발자 계정 소유자가 승인한 이메일 주소 목록으로 제한됩니다.

주요 이점은 테스터에게 최소 빌드 전달 시간입니다. Google Play에서 Internal Testing은 검토를 거칠 필요가 없으며, 업로드 후 5~15분 내에 참가자에게 빌드가 표시됩니다. App Store의 TestFlight를 통해서도 빌드가 사전 App Review 없이 전달되지만, 기본적인 보안 요구 사항에 대한 자동 확인을 받습니다.

Internal Testing과 다른 트랙의 차이점

Google Play에는 Internal Testing, Closed Beta(Open Beta), Production의 세 가지 테스트 트랙이 있습니다. Internal Testing은 가장 빠르고 참가자 수가 가장 제한적입니다(최대 100명). Closed Beta는 최대 10,000명의 참가자를 허용하며 테스트 페이지 설정이 필요합니다. Production은 완전한 검토를 거치는 최종 단계입니다.

Internal Testing 사용 시기

Internal Testing은 베타 트랙으로 넘어가기 전 초기 빌드 확인에 사용됩니다. 개발자는 일일 빌드를 QA 팀에 업로드하고, 새 SDK 통합을 확인하고, 다양한 OS 버전과의 호환성을 테스트하고, 빌드가 외부 테스터에게 공개되기 전에 회귀 오류를 식별합니다.

Google Play의 Internal Testing

Google Play Console에서 Internal Testing은 Release → Testing 섹션에서 사용할 수 있는 별도의 트랙입니다. 테스터를 추가하려면 이메일 주소를 입력하기만 하면 참가자가 Google Play를 통해 참여할 수 있는 초대장과 링크를 받습니다. 빌드는 프로덕션 릴리스와 동일한 인터페이스를 통해 업로드됩니다.

내부 트랙 게시 프로세스

개발자는 Google Play Console의 Internal Testing 섹션에 App Bundle 또는 APK를 업로드합니다. 시스템은 서명, 코드 버전 및 API 호환성과 같은 기본 요구 사항을 확인합니다. 5~15분의 처리 후 빌드를 테스터가 사용할 수 있습니다. 상태는 콘솔에서 추적됩니다: 초안, 검토 중, 테스트 준비 완료.

groovy
// Fastlane — Internal Testing 트랙에 게시
lane :internal_testing do
    gradle(task: ":app:assembleRelease")
    
    upload_to_play_store(
        track: "internal",
        release_status: "completed",
        rollout: 1.0
    )
    
    slack(
        message: "Build uploaded to Internal Testing"
    )
end

테스터 관리

참가자 추가는 Google Play Console의 Testers 섹션을 통해 수행됩니다. CSV 파일을 통한 그룹 업로드가 지원됩니다. 각 테스터는 초대장과 설치 지침이 포함된 이메일을 받습니다. 액세스를 취소하려면 그룹에서 참가자를 제거하기만 하면 설치된 앱은 계속 작동하지만 새 업데이트는 전달되지 않습니다.

App Store에서 TestFlight를 통한 Internal Testing

Apple 생태계에서는 TestFlight가 Internal Testing 역할을 수행합니다. 이는 베타 버전 배포를 위한 플랫폼입니다. TestFlight는 최대 100명의 내부 테스터를 지원하며, App Store Connect를 통해 이메일로 추가됩니다. 빌드 게시에 완전한 App Review가 필요하지 않지만, 빌드는 최소 요구 사항에 대해 자동으로 확인됩니다.

TestFlight Internal Testing 기능

검토가 전혀 필요하지 않은 Google Play와 달리, Apple은 자동 기본 검토를 수행합니다. 확인에는 30~60분이 소요되며 악성 API에 대한 바이너리 코드 스캔 및 기본 요구 사항 준수 여부 확인이 포함됩니다. 확인에 성공하면 빌드를 24시간 내에 테스터가 사용할 수 있습니다. 빌드의 유효 기간은 90일입니다.

App Store Connect에서 Internal Testing 설정

App Store Connect에서 Internal Testing은 TestFlight → Internal Testing 섹션에서 구성됩니다. 계정 소유자는 이메일로 테스터를 추가하고 역할을 할당합니다. Xcode 또는 Transporter를 통해 빌드를 업로드하면 시스템이 새 버전의 가용성을 참가자에게 알립니다. 테스터는 기기의 TestFlight 앱을 통해 앱을 설치합니다.

Internal Testing 트랙 설정 방법

두 플랫폼 모두에서 Internal Testing을 설정하는 데 10~30분이 소요됩니다. 아래는 Google Play 및 App Store에 대한 단계별 지침입니다. 이 프로세스는 앱 코드 변경이 필요하지 않으며 개발자 콘솔을 한 번만 설정하면 됩니다.

단계Google PlayApp Store(TestFlight)
1Google Play Console → Testing → InternalApp Store Connect → TestFlight → Internal Testing
2테스터 그룹 만들기테스터 이메일 추가
3App Bundle / APK 업로드Xcode / Transporter를 통해 IPA 업로드
4처리 5~15분 대기기본 검토 30~60분 대기
5팀에 가용성 알림TestFlight가 참가자에게 알림

CI/CD 시스템과의 통합

두 스토어 모두 API를 통한 Internal Testing 게시를 지원합니다. 자동화에는 Gradle Play Publisher(Google Play)와 Fastlane(두 플랫폼 모두)이 사용됩니다. CI/CD 파이프라인은 단위 테스트 및 UI 테스트가 성공적으로 실행될 때마다 내부 트랙에 빌드를 업로드할 수 있습니다.

테스트 계정 설정

인증이 필요한 앱의 경우 테스트 계정을 준비하여 QA 팀에 제공해야 합니다. 계정은 테스트 환경(스테이징/개발)에 액세스할 수 있어야 하며 프로덕션 데이터에 영향을 주지 않아야 합니다. 내부 트랙용으로 별도의 테스트 Firebase 구성을 만드는 것이 좋습니다.

Internal Testing을 사용한 QA 워크플로

Internal Testing은 CI에서 자동 검사를 통과한 후 QA 파이프라인에 통합됩니다. 개발자 또는 DevOps 엔지니어가 내부 트랙에 빌드를 업로드하면 QA 엔지니어가 알림을 받고 앱 스토어를 통해 테스트 기기에 업데이트를 설치합니다.

최적의 릴리스 빈도

매일 또는 코드 베이스에 중요한 변경이 있을 때마다 Internal Testing에 빌드를 릴리스하는 것이 좋습니다. QA 팀은 인증, 주요 사용자 흐름, API 통합 및 로컬 스토리지 작업과 같은 중요한 시나리오를 테스트합니다. 회귀 테스트는 3~4번째 빌드마다 수행됩니다.

피드백 수집 도구

버그 리포트 수집을 위해 추적 시스템(Jira, YouTrack, Trello 또는 GitHub Issues)과의 통합을 사용합니다. 테스터는 스크린샷, 로그 및 재현 단계를 보냅니다. TestFlight에는 기기를 흔들 때 스크린샷 및 기기 로그 수집 기능이 내장되어 있으며, 데이터는 App Store Connect를 통해 개발자에게 전송됩니다.

CI/CD 파이프라인 통합

Internal Testing 트랙에 빌드를 자동으로 게시하려면 CI/CD 파이프라인을 설정합니다. 단위 테스트 및 UI 테스트를 통과한 후 스크립트가 빌드를 내부 트랙에 업로드하고 QA 팀에 알림을 보냅니다. Fastlane은 track: internal 매개변수와 함께 upload_to_play_store 액션을 제공합니다. iOS의 경우 Fastlane Pilot을 사용하여 TestFlight에 업로드합니다.

Internal Testing의 제한 사항

Internal Testing에는 참가자 수에 대한 엄격한 제한이 있습니다: Google Play에서 최대 100명, TestFlight에서 최대 100명의 내부 테스터입니다. Google Play는 또한 그룹 수를 제한하여 내부 트랙의 그룹은 최대 1개입니다. App Store는 빌드 수를 제한하지 않지만 각 빌드의 유효 기간은 90일입니다.

플랫폼 간 제한 사항 차이

Google Play는 내부 트랙에 업로드되는 빌드 수를 제한하지 않지만, 90일 동안 비활성 상태이면 트랙이 자동으로 중단될 수 있습니다. TestFlight에는 더 엄격한 제한이 있습니다: 동시에 최대 30개의 활성 빌드, 최대 10,000명의 외부 테스터(내부 아님). 제한을 해제하려면 Apple Developer Enterprise 프로그램에 참여해야 합니다.

내부에서 오픈 베타로 마이그레이션

내부 트랙에서 빌드가 안정화된 후 외부 사용자 테스트를 위해 Closed 또는 Open Beta로 이동됩니다. Google Play는 트랙 설정을 복사하고 다시 업로드하지 않고 빌드를 전송할 수 있습니다. TestFlight는 새로운 테스터 그룹으로 별도의 외부 트랙을 생성해야 합니다.

Internal Testing 트랙 보안

내부 트랙의 빌드는 외부 액세스로부터 보호됩니다: Google Play Console 또는 App Store Connect를 통해 승인된 참가자만 앱을 다운로드할 수 있습니다. 앱 링크를 알고 있더라도 권한 없는 사용자는 빌드를 설치할 수 없습니다. 이는 새로운 기능의 기밀성을 보장하고 개발 단계에서 지적 재산권을 보호합니다.

자주 묻는 질문

Internal Testing에 테스터를 몇 명까지 추가할 수 있나요?

Google Play에서는 최대 100명입니다. TestFlight에서도 최대 100명의 내부 테스터입니다. 대상을 확장하려면 Closed Beta(Google Play에서 최대 10,000명) 또는 External Testing(TestFlight에서 최대 10,000명)으로 전환해야 합니다.

Internal Testing에 검토가 필요한가요?

Google Play에서는 검토가 필요하지 않습니다 — 업로드 후 5~15분 내에 빌드를 사용할 수 있습니다. TestFlight에서는 자동 기본 검토(30~60분)가 수행되어 게시가 약간 지연됩니다. 전체 App Review는 필요하지 않습니다.

Internal Testing을 고객에게 사용할 수 있나요?

아니요, Internal Testing은 내부 개발 팀만을 위한 것입니다. 고객 및 외부 테스터에게는 Closed Beta(Google Play) 또는 External Testing(TestFlight)을 사용하세요. 이 트랙은 더 많은 참가자와 공개 테스트 페이지를 지원합니다.

내부 트랙에서 빌드를 얼마나 자주 업데이트할 수 있나요?

Google Play에는 빈도 제한이 없으며 매일 또는 하루에 여러 번 빌드를 릴리스할 수 있습니다. TestFlight는 빌드 수명을 90일로 제한하지만 새 빌드 수는 제한되지 않습니다. 테스트 안정성을 위해 하루에 1~2회 이상 업데이트하지 않는 것이 좋습니다.

Internal Testing과 Closed Beta의 차이점은 무엇인가요?

Internal Testing은 100명의 참가자로 제한되고, 검토가 필요 없으며, 공개 페이지가 없습니다. Closed Beta는 최대 10,000명의 참가자를 지원하고, 참여를 위한 공개 링크가 있으며, 국가 또는 지역별로 구성할 수 있습니다. Closed Beta는 Google Play 검색에도 표시됩니다.

요약

  • Internal Testing — 내부 개발 팀과 QA 간에 빌드를 배포하기 위한 폐쇄형 트랙
  • Google Play Internal — 최대 100명의 참가자, 5~15분 내 빌드 사용 가능, 검토 불필요
  • TestFlight Internal — 최대 100명의 참가자, 기본 검토 30~60분, 빌드 90일 유효
  • CI/CD 통합 — Fastlane 및 Gradle Play Publisher가 내부 트랙 게시 자동화
  • 일일 릴리스 — 자동 테스트 후 QA 파이프라인에 최적의 빈도
  • 마이그레이션 — 안정적인 빌드는 외부 사용자 테스트를 위해 Closed/Open Beta로 이동
  • TestFlight는 기기 흔들기 시 스크린샷 및 로그가 포함된 버그 리포트 수집 지원

턴키 방식의 모바일 애플리케이션을 개발해 드립니다

IT Sectr는 2017년부터 스타트업과 기업을 위한 iOS 및 Android 애플리케이션을 만듭니다. 저희가 상담해 드리고 최적의 솔루션을 제안하겠습니다.

프로젝트 논의

더 읽어보기