Google Play 결제 라이브러리 통합 테스트

개발 과정 전체에서 통합을 테스트해야 합니다. 테스트 방법 개발 단계에서 라이선스 테스터Play 결제 실험실에서 설명한 시나리오를 통해 이 섹션에서 설명하겠습니다

라이선스 테스터

라이선스 테스터를 구성하려면 다음을 참고하세요. 애플리케이션 라이선스로 인앱 결제를 테스트합니다.

라이선스 테스터를 사용하면 다음과 같은 이점이 있습니다.

  • 서명되지 않아 Google Play에 업로드되지 않은 앱의 경우 Google Play 결제 라이브러리가 일반적으로 차단됩니다. 라이선스 테스터는 이 검사를 건너뛸 수 있습니다. 즉, 앱의 새 버전에 업로드할 필요 없이 디버그 서명이 있는 디버그 빌드를 사용하는 앱의 경우에도 테스트용으로 앱을 사이드로드할 수 있습니다. 패키지 이름은 Google Play용으로 구성된 앱 이름과 일치해야 하며 Google 계정은 Google Play Console 계정의 라이선스 테스터여야 합니다.
  • 라이선스 테스터는 테스터에 실제 구매 비용을 청구하지 않는 테스트 결제 수단에 액세스할 수 있습니다. 또한 테스트 결제 수단을 사용하여 결제가 거부된 경우와 같은 특정 상황을 시뮬레이션할 수도 있습니다. 그림 1에서는 구매 흐름 내에서 나타나는 이러한 테스트 결제 방법을 보여줍니다.
  • 라이선스 테스터는 정기 결제 기능을 신속하게 테스트할 수 있습니다.
라이선스 테스터는 테스트 결제 수단에 액세스할 수 있습니다.
그림 1. 라이선스 테스터는 테스트 결제 수단에 액세스할 수 있습니다.

다음은 테스트 구매 프로세스에 관한 몇 가지 추가 세부정보입니다.

  • 테스트 구매에서는 실제 구매에 사용된 것과 동일한 앱 구매 흐름을 사용합니다.
  • 테스트 구매에는 세금이 계산되지 않습니다.
  • Google Play에서는 구매 대화상자 가운데에 알림을 표시하여 테스트 구매를 나타냅니다.

구매 대화상자를 펼쳐서 구매하는 계정을 확인할 수 있습니다. 다음 내용을 참고하세요.

  • 테스트 계정은 테스터의 Android 기기에 있어야 합니다.
  • 기기에 계정이 두 개 이상 있다면 앱을 다운로드한 계정으로 구매가 이루어집니다.
  • 어떤 계정으로도 앱을 다운로드하지 않았다면 첫 번째 계정으로 구매가 이루어집니다.

앱을 배포하기 전에 Google Play 테스트 트랙을 활용하여 추가 유효성 검사를 실행할 수 있습니다. 예를 들어 테스트 트랙을 활용하여 QA팀이 새 출시 버전을 받을 수 있도록 합니다.

테스트 트랙을 통해 사용자는 Google Play에서 앱을 설치하고 아직 공개되지 않은 앱 버전을 테스트할 수 있습니다. 사용자는 Google Play에서 결제 수단 중 하나를 사용하여 실제 구매를 진행할 수 있습니다.

테스트 트랙을 사용하여 Google Play 결제 라이브러리 통합을 테스트하려면 다음 단계를 따르세요.

  1. 테스트 트랙에 앱을 게시합니다. 테스트 트랙에 앱을 게시한 후 테스터가 앱을 사용할 수 있기까지 몇 시간이 걸릴 수 있습니다.
  2. 각 테스터가 앱의 테스트를 선택했는지 확인합니다. 테스트 참여 URL에서 테스터는 테스터의 역할에 관한 설명과 함께 참여 링크를 확인할 수 있습니다.

Android 1.6 이상을 실행하는 모든 Android 기반 하드웨어 기기에서 통합을 테스트할 수 있습니다. Google Play 애플리케이션의 최신 버전이 기기에 설치되어 있어야 합니다. Android 애플리케이션 개발에 사용할 기기를 설정하는 방법은 하드웨어 기기 사용을 참조하세요.

Play 결제 실험실

Play 결제 실험실은 개발자가 Google Play 결제 시스템과의 통합을 고려해야 합니다 이를 통해 쉽고 빠르게 개발자가 결제 기능을 테스트하고, 더 빠르게 통합하고, 출시할 수 있게 되었습니다 Google Cloud의 최신 기능을 Play 결제 실험실의 Play 스토어.

Play 결제 실험실을 사용하면 테스트에서 다음 작업을 할 수 있습니다.

<ph type="x-smartling-placeholder">Play 결제 실험실 대시보드</ph>
그림 2. Play 결제 실험실 대시보드

일회성 제품 테스트

소비성 제품 테스트

소비성 제품을 테스트할 때는 다음을 비롯하여 다양한 상황을 테스트하는 것이 좋습니다.

  • 사용자가 항목을 받는 성공적인 구매 상황. 라이선스 테스터를 통해 테스트 도구, 항상 승인 결제 수단을 사용할 수 있습니다.
  • 결제 수단으로 비용이 청구되지 않으며 사용자가 항목을 받지 못하게 되는 구매 상황. 라이선스 테스터를 통해 테스트 도구, 항상 거부 결제 수단을 사용할 수 있습니다.
  • 항목을 여러 번 구매할 수 있는 상황.

또한 구매 처리에 설명된 대로 구매가 제대로 확인되었는지 인증해야 합니다. 라이선스 테스터로부터 구매하는 경우 앱에서 구매를 확인하지 않으면 3분 후에 구매가 환불되며, 취소에 관한 이메일을 받게 됩니다. Google Play Console의 주문 탭을 확인하여 3분 후에 주문이 환불되었는지 확인할 수도 있습니다.

비소비성 제품 테스트

비소비성 구매는 소비성 구매와 동일하게 테스트해야 하지만 앱 내에서 항목을 다시 구매할 수 없는지 확인해야 합니다. 두 가지 구매 유형을 처리하는 논리가 각각 다르므로 비소비성 제품과 소비성 제품 둘 다의 구매 확인을 인증해야 합니다(해당되는 경우).

구매 대기 중 테스트

구매 상태가 PURCHASED가 되면 항목이 승인되어야 하는 구매 대기 중을 테스트해야 합니다. 라이선스 테스터는 몇 분 후에 결제가 자동으로 완료되거나 취소되는 지연된 결제 수단을 위한 두 가지 테스트 도구에 액세스할 수 있습니다.

  1. 그림 2와 같이 지연된 결제 수단 '느린 테스트 카드, 몇 분 후 거부됨'을 사용해 구매합니다. 앱을 다시 시작하고 구매가 승인되지 않았는지 확인합니다.

    거부된 느린 테스트 카드로 구매 테스트
    그림 3. 거부된 느린 테스트 카드로 구매 테스트

  2. 그림 3과 같이 지연된 결제 수단 '느린 테스트 카드, 몇 분 후 승인됨'을 사용하여 구매합니다. 몇 분 정도 기다린 후 구매가 승인되었는지 확인합니다.

    승인된 느린 테스트 카드로 구매 테스트
    그림 4. 승인된 느린 테스트 카드로 구매 테스트

자세한 내용은 대기 중인 거래 처리를 참고하세요.

정기 결제 관련 기능 테스트

일회성 제품 및 정기 결제의 구매 흐름은 비슷하지만, 정기 결제에는 정기 결제 갱신의 성공 또는 거부와 같은 추가 시나리오가 있습니다. 갱신을 테스트하기 위해 그림 1과 같이 라이선스 테스터가 이용할 수 있는 테스트 도구, 항상 승인테스트 도구, 항상 거부 결제 수단을 사용할 수 있습니다. 성공적인 정기 결제 시나리오 이상의 시나리오를 테스트하려면 이러한 결제 수단을 사용하세요.

일회성 제품과 유사하게, 구매 처리에 설명된 대로 구매가 제대로 확인되었는지 인증해야 합니다. 라이선스 테스터로부터 구매하는 경우 앱에서 구매를 확인하지 않으면 3분 후에 구매가 환불되며, 취소에 관한 이메일을 받게 됩니다. Google Play Console의 주문 탭을 확인하여 3분 후에 주문이 환불되었는지 확인할 수도 있습니다.

갱신 기간

테스트 정기 결제는 실제 정기 결제보다 더 빠르게 갱신됨 테스트 정기 결제는 최대 6회 갱신할 수 있으며 무료는 포함되지 않습니다. 무료 체험 및 신규 할인 기간입니다

다음 표에는 기간이 다양한 정기 결제의 테스트 갱신 시간이 나와 있습니다. 이 시간은 대략적인 시간입니다. 이벤트의 정확한 시간에는 약간의 변동이 있을 수 있습니다. 이러한 변동을 보완하려면 각 정기 결제 만료일 이후 API를 호출하여 현재 상태를 확인하세요.

프로덕션 정기 결제 기간 테스트 정기 결제 갱신
1주 5분
1개월 5분
3개월 10분
6개월 15분
1년 30분

무료 체험판과 같은 시간 기반 정기 결제 기능도 테스트를 위해 단축되었습니다. 다음 표에는 시간 기반 정기 결제 기능과 관련된 테스트 기간이 나와 있습니다.

기능 테스트 기간
구매 확인 5분
무료 체험판 3분
신규 할인 가격 기간 정기 결제 테스트 기간과 동일
유예 기간(3일 및 7일 모두) 5분
계정 보류 10분
일시중지(1개월) 5분
일시중지(2개월) 10분
일시중지(3개월) 15분

무료 체험 혜택

Play 결제 실험실 무료 체험판 혜택 테스트 기능을 사용하면 라이선스 테스터는 무제한 무료 체험 또는 신규 할인 혜택을 테스트하고 '무료 체험판 또는 신규 할인 혜택 테스트'을 선택하여 해당 횟수 변경사항을 적용합니다. 따라서 여러 개의 계정을 사용하여 신규 구독자에게만 제공되는 무료 체험 혜택을 테스트할 수 있습니다.

테스트 체험판 혜택
그림 5. 테스트 체험판 혜택을 누리세요.

가격 변경사항

Play 결제 실험실과 라이선스 테스터를 사용하여 테스트할 수도 있습니다. 구독 가격 변경 없이 다른 활성 구독자에게 영향을 미치려면 다음 단계를 따르세요.

  1. 대시보드정기 결제 설정 카드에서 관리를 클릭합니다.
  2. 테스트하려는 활성 상태의 정기 결제를 선택합니다.
  3. 새 가격을 입력합니다.
  4. 테스트 요구사항에 따라 사용자 선택 해제 체크박스를 선택하거나 선택 해제합니다.
  5. 적용을 클릭합니다.
<ph type="x-smartling-placeholder">구독 요금 변경 테스트</ph>
그림 6. 정기 결제 가격 변경 테스트

변경사항을 적용하면 다음부터 가격이 업데이트됩니다. 테스터에게만 갱신이 적용됩니다. 다른 활성 구독자는 영향을 받지 않습니다. 모든 라이선스 테스터 규칙이 테스트 구독에 적용됩니다. 테스터는 그런 다음 가격 변경으로 인해 트리거되는 다운스트림 프로세스(예: 가격 변경 알림

테스트 기간을 계획할 때는 다음 사항을 고려하세요.

  • 라이선스 테스터의 갱신 기간이 짧기 때문에 콘솔에서 수행한 가격 이전은 라이선스 테스터에게 등록되지 않습니다. 받는사람 개발자는 가격 변경 알림과 이메일을 테스트할 수 있도록 가격 변경이 발생한 후 최소 1시간 후에 결제를 연기해야 합니다.
  • 가격 인하에는 알림 기간이 없습니다. 사용자에게 알림 사용자 집단 이전 직후에 가격이 인하되었습니다. 테스트 중에는 변경되지 않습니다.
  • 가격 인상의 경우 테스트 알림 시간은 실제 인상과 동일하게 계산됩니다.
    • 필수 알림 기간 후 첫 번째 결제일이 되면 사용자에게 첫 번째 요금이 청구됩니다.
    • 알림 시간은 첫 청구 날짜부터 역방향으로 계산됩니다.
    • 최종 알림은 결제 기간과 관계없이 항상 청구 1분 전입니다.

다음 표에서는 여러 실제 결제 기간의 테스트 결제 및 알림 기간을 보여줍니다.

실제 기본 요금제 결제 기간 테스트 결제 기간 테스트 알림 기간(30일 고지가 제공되는 수신 동의 및 거부 지역) 테스트 알림 기간(60일 고지가 제공되는 거부 지역)
1주 5분 5분 10분
1개월 5분 5분 10분
3개월 10분 3분 6분
6개월 15분 2분 4분
1년 30분 3분 6분

테스트 사례

정기 결제 통합을 확인하는 데 사용할 테스트 시나리오를 표시하려면 표시/숨기기를 클릭하여 다음 섹션을 확장합니다.

대기 중인 거래 테스트

대기 중인 거래가 올바르게 처리되고 사용 권한이 있는지 테스트해야 합니다. 구매 상태가 PURCHASED가 되면 적절히 업데이트됩니다. 라이선스 테스터 지연된 결제 수단을 위한 두 개의 테스트 도구에 액세스할 수 몇 분 후에 결제가 자동으로 완료되거나 취소됩니다.

  1. 그림 2와 같이 지연된 결제 수단 '느린 테스트 카드, 몇 분 후 거부됨'을 사용해 구매합니다. 앱을 다시 시작하고 구매가 승인되지 않았는지 확인합니다.

    거부된 느린 테스트 카드로 구매 테스트
    그림 2. 거부된 느린 테스트 카드로 구매 테스트

  2. 그림 3과 같이 지연된 결제 수단 '느린 테스트 카드, 몇 분 후 승인됨'을 사용하여 구매합니다. 몇 분 정도 기다린 후 구매가 승인되었는지 확인합니다.

    승인된 느린 테스트 카드로 구매 테스트
    그림 3. 승인된 느린 테스트 카드로 구매 테스트

프로모션 코드 테스트

Google Play Console을 사용하여 자체 테스트를 위한 코드를 생성할 수 있습니다. 앱에서 모든 관리 제품에 대해 분기당 500개의 프로모션 코드만 만들 수 있습니다.

다음과 같은 프로모션 코드 사용 시나리오를 테스트해야 합니다.

  • 앱 내에서 실행된 구매 대화상자에 프로모션 코드 입력 시
  • Google Play 스토어 앱에서 프로모션 코드 사용 시
  • 왼쪽 탐색의 사용 버튼을 사용하여 https://play.google.com/store에서 프로모션 코드 사용 시

이러한 시나리오 내에서 가능한 다양한 방식으로 코드 사용을 테스트해야 합니다. 최소한 다음 테스트를 실행하는 것이 좋습니다.

  • 앱을 설치하기 전에 코드를 사용합니다.
  • 앱이 포그라운드에서 실행되는 동안 코드를 사용합니다. 이 테스트에는 Google Play 스토어 앱을 사용하여 테스트할 또 다른 기기가 필요합니다. 앱의 다양한 화면에서 코드 사용을 테스트해야 합니다.
  • 앱과 Google Play 스토어 앱이 모두 동시에 표시되는 멀티 윈도우 모드에서 코드를 사용합니다.

각 테스트에서 항목이 올바르게 감지되고 사용자가 알림을 받는지 확인합니다.

다양한 지역에서 구매 환경 테스트

Play 결제 실험실 사용 여부와 관계없이 구매 환경을 테스트할 수 있습니다.

테스트 대상

Play 결제 실험실 Android 앱을 사용하면 모든 리전에서 구매 흐름을 볼 수 있습니다 하지만 Play 결제 실험실을 사용하려면 라이선스 테스터여야 합니다. 사용 다음 단계에 따라 테스트하세요.

  1. 앱 결제 사용자를 라이선스 테스터로 등록합니다.
  2. 동일한 사용자로 Play 결제 실험실 앱에 로그인합니다.
  3. 원하는 국가를 선택하고 Play 결제 실험실에서 변경사항을 적용합니다.
  4. 테스트 중인 앱에서 구매 흐름을 시작합니다.
<ph type="x-smartling-placeholder">다양한 지역에서 구매 경험 테스트</ph>
그림 7. 다양한 지역에서 구매 환경을 테스트합니다.

없이 테스트

또한 다음을 사용하지 않고 모든 리전에서 구매 흐름을 테스트할 수 있습니다. Play 결제 실험실에 오신 것을 환영합니다 다음 단계를 따라 테스트하세요.

  1. 새 Gmail 계정을 만듭니다. 모든 국가에서 계정을 만들 수 있습니다.
  2. 필요한 경우 사용자를 라이선스 테스터로 설정할 수 있습니다.
  3. 원하는 국가로 VPN을 연결하여 테스트합니다.
  4. 구매 흐름을 시작합니다.

Play 스토어 데이터와 캐시를 지우고 원하는 기기에 3단계와 4단계를 반복하세요. 선택해야 합니다. 새로운 국가로 전환한 후 필요한 사항 Google Play 스토어의 데이터 지우기로 이동하여 이전 앱과 관련된 데이터를 삭제합니다. 있습니다.

이 두 가지 구매 테스트 방법을 사용하면 제공 지역 자격 요건과 사용자 환경을 개선할 수 있습니다.