일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- php
- 인앱결제
- rx
- android13
- Android
- databinding
- MediaSession
- GCP
- 동영상
- MediaPlayer
- 테스트 자동화
- Observable
- Kotlin
- Koin
- Reactive
- node
- PagingLib
- google play
- mysql
- RxKotlin
- node.js
- paging
- SWIFTUI
- SwiftUI Tutorial
- Animation
- list
- MotionLayout
- mvvm
- Android 13
- junit
- Today
- Total
봄날은 갔다. 이제 그 정신으로 공부하자
Google Play 결제 시스템 - Google Play 결제 라이브러리 통합 테스트 본문
참고 사이트: https://developer.android.com/google/play/billing/test?hl=ko
라이선스 테스터를 사용하면 다음과 같은 이점이 있습니다.
장점 1
서명되지 않아 Google Play에 업로드되지 않은 앱의 경우 Google Play 결제 라이브러리가 일반적으로 차단됩니다. 라이선스 테스터는 이 검사를 건너뛸 수 있습니다. 즉, 앱의 새 버전에 업로드할 필요 없이 디버그 서명이 있는 디버그 빌드를 사용하는 앱의 경우에도 테스트용으로 앱을 사이드로드할 수 있습니다. 패키지 이름은 Google Play용으로 구성된 앱 이름과 일치해야 하며 Google 계정은 Google Play Console 계정의 라이선스 테스터여야 합니다.
장점 2
라이선스 테스터는 테스트에 실제 구매 비용을 청구하지 않는 테스트 결제 수단에 액세스할 수 있습니다. 또한 테흐트 결제 수단을 사용하여 결제가 거부된 경우와 같은 특정 상황을 시뮬레이션할 수도 있습니다. 아래 그림은 구매 흐름 내에서 나타나는 이러한 테스트 결제 방법을 보여줍니다.
장점 3
라이선스 테스터는 "정기 결제 기능을 신속하게 테스트"할 수 있습니다.
다음은 테스트 구매 프로세스에 관한 몇가지 추가 세부정보 입니다.
- 테스트 구매에서는 실제 구매에 사용된 것과 동일한 앱 구매 흐름을 사용합니다.
- 테스트 구매에는 세금이 게산되지 않습니다.
- Google Play에서는 구매 대화상자 가운데에 알림을 표시하여 테스트 구매를 나타냅니다.
구매 대화상자를 펼쳐서 구매하는 계정을 확인할 수 있습니다.
- 테스트 계정은 테스터의 Android 기기에 있어야 합니다.
- 기기에 계정이 두 개 이상 있다면 앱을 다운로드한 계정으로 구매가 이루어집니다.
- 어떤 계정으로도 앱을 다운로드하지 않았다면 첫 번째 계정으로 구매가 이루어집니다.
앱을 배포하기 전에 Google Play "테스트 트랙"(https://support.google.com/googleplay/android-developer/answer/3131213?hl=ko)을 활용하여 추가 유효선 검사를 실행할 수 있습니다. 예를 들어 테스트 트랙을 활용하여 QA팀이 새 출시 버전을 받을 수 있도록 할 수 있습니다. 테스트 트랙을 통해 사용자는 Google Play에서 앱을 설치하고 아직 공개되지 않은 앱 버전을 테스트할 수 있습니다. 사용자는 Google Play에서 결제 수단 중 하나를 사용하여 실제 구매를 진행할 수 있습니다.
* 참고: 테스트 트랙에서 사용자가 구매하더라도 구매한 사용자가 라이선스 테스터가 아니면 사용자 계정에 실제로 요금이 청구됩니다.
테스트 트랙을 사용하여 Google Play 결제 라이브러리 통합을 테스트하려면 다음 단계를 따릅니다.
- "테스트 트랙"에 앱을 게시합니다. 테스트 트랙에 앱을 게시한 수 테스터가 앱을 사용할 수 있기까지 몇 시간이 걸릴 수 있습니다.
- 각 테스트가 앱의 테스트를 선택했는지 확인합니다. 테스트 참여 URL에서 테스터는 테스터의 역할에 관한 설명과 함께 참여 링크를 확인할 수 있습니다.
Android 1.6 이상을 실행하는 모든 Android 기반 하드웨어 기기에서 통합을 테스트할 수 있습니다. Google Play 애플리케이션의 최신 버전이 기기에 설치되어 있어야 합니다. Android 애플리케이션 개발에 사용할 기기를 설정하는 방법은 "하드웨어 기기 사용"(https://developer.android.com/studio/run/device?hl=ko) 참조
* 참고: 라이선스 테스터가 개발 및 테스트에 권장되지만 가끔은 큰 변경사항이 있는 경우에는 비 라이선스 테스터 계정을 사용해서 앱을 테스트해야 합니다. 비 라이선스 테스트를 사용하면 앱이 갱신 기간과 같은 특정 로직 테스트에 의존하지 않도록 할 수 있습니다.
* 참고: 테스트 트랙의 사용자는 앱의 라이선스 테스터일 수도 있습니다.
일회성 제품 테스트
소비성 제품 테스트
소비성 제품을 테스트할 때는 다음을 비롯하여 다양한 상황을 테스트하는 것이 좋습니다.
- 사용자가 항목을 받는 성공적인 구매 상황 → 라이선스 테스터를 통해 "테스트 도구, 항상 승인" 결제 수단을 사용할 수 있습니다.
- 결제 수단으로 비용이 청구되지 않으며 사용자가 항목을 받지 못하게 되는 구매 상황 → 라이선스 테스터를 통해 "테스트 도구, 항상 거부" 결제 수단을 사용할 수 있습니다.
- 항목을 여러 번 구매할 수 있는 상황
또한 구매 처리에 설명된 대로 구매가 제대로 확인되었는지 인증해야 합니다. 라이선스 테스터로부터 구매하는 경우 앱에서 구매를 확인하지 않으면 3분 후에 구매가 환불되며, 취소에 관한 이메일을 받게 됩니다. Google Play Console의 주문 탭을 확인하여 3분 후에 주문이 환불되었는지 확인할 수도 있습니다.
비소비성 제품 테스트
비소비성 구매는 소비성 구매와 동일하게 테스트해야 하지만 앱 내에서 항목을 다시 구매할 수 없는지 확인해야 합니다. 두 가지 구매 유형을 처리하는 논리가 각각 다르므로 비소비성 제품과 소비성 제품 둘 다의 구매 확인을 인증해야 합니다. (해당 하는 경우)
* 참고:
동일한 비소비성 제품의 테스트 구매를 여러 번 진행하기 위해 "Google Play Console을 사용하여 구매를 환불 및 취소"할 수 있습니다.
정기 결제 관련 기능 테스트
일회성 제품 및 정기 결제의 구매 흐름은 비슷하지만, 정기 결제에는 정기 결제 갱신의 성공 또는 거부와 같은 추가 시나리오가 있습니다.
갱신을 테스트하기 위해 위 그림과 같이 라이선스 테스터가 이용할 수 있는 "테스트 도구, 항상 승인" 및 "테스트 도구, 항상 거부" 결제 수단을 사용할 수 있습니다. 성공적인 정기 결제 시나리오 이상의 시나리오를 테스트하려면 이러한 결제 수단을 사용하세요.
일회성 제품과 유사하게, "구매 처리"에 설명된 대로 구매가 제대로 확인되었는지 인증해야 합니다. 라이선스 테스터로부터 구매하는 경우
앱에서 구매를 확인하지 않으면 3분 후에 구매가 환불되며, 취소에 관한 이메일을 받게 됩니다. Google Play Console의 주문 택을 확인하여
3분 후에 주문이 환불되었는지 확인할 수도 있습니다.
갱신 기간
테스트 정기 결제는 실제 정기 결제보다 더 빨리 갱신되며 테스트 정기 결제는 최대 6회까지 갱신할 수 있습니다.
아래 표는 기간이 다양한 정기 결제의 테스트 갱신 시간이 나와 있습니다. 이 시간은 대략적인 시간으로 이벤트의 정확한 시간에는 약간의 변동이 있을 수 있습니다.
이러한 변동을 보완하려면 각 정기 결제 만료일 이후 API를 호출하여 현재 상태를 확인해야 합니다.
무료 체험판과 같은 시간 기반 정기 결제 기능도 테스트에서는 단축됩니다. 아래 표는 시간 기반 정기결제 기능과 관련된 테스트 기간입니다.
테스트 시나리오 예시
Skip
프로모션 코드 테스트
Google Play Console을 사용하여 "자체 테스트를 위한 코드를 생성"할 수 있습니다. 앱에서 모든 관리 제품에 대해 분기당 500개의 프로모션 코드만 만들 수 있습니다.
아래와 같은 프로모션 코드 사용 시나리오를 테스트해야 합니다.
- 앱 내에서 실행된 구매 대화 상자에 프로모션 코드 입력 시
- Google Play 스토어 앱에서 프로모션 코드 사용 시
- 왼쪽 탐색의 "사용" 버튼을 사용하여 "https://play.google.com/store"에서 포르모션 코드 사용 시
이러한 시나리오 내에서 가능한 다양한 방식으로 코드 사용을 테스트해야 하며 최소한 아래와 같은 테스트를 실행하는 것이 좋습니다.
- 앱을 설치하기 전에 코드를 사용합니다.
- 앱이 포그라운드에서 실행되는 동안 코드를 사용합니다. 이 테스트에는 Google Play 스토어 앱을 사용하여 테스트할 또는 다른 기기가 필요합니다. 앱의 다양한 화면에서 코드 사용을 테스트해야 합니다.
- 앱과 Google Play 스토어 앱이 모두 동시에 표시되는 "멀티 윈도우 모드"에서 코드를 사용합니다.
각 테스트에서 항목이 올바르게 감지되고 사용자가 알림을 받는지 확인합니다.
'학습' 카테고리의 다른 글
여러가지 방식으로 List 만들어보기 - part 2 (0) | 2020.12.23 |
---|---|
여러가지 방식으로 List 만들어보기 - part 1 (0) | 2020.12.22 |
Google Play 결제 시스템 - 프로모션 코드 (0) | 2020.12.18 |
Google Play 결제 시스템 - 정기 결제 판매 (1) | 2020.12.17 |
Google Play 결제 시스템 - 앱에 Google Play 결제 라이브러리 통합 (0) | 2020.12.15 |