Integrację należy testować przez cały okres jej tworzenia. Aby przeprowadzić testy w fazie rozwoju, zalecamy skorzystanie z testerów licencji i Laboratorium płatności w Google Play, aby przetestować scenariusze opisane w tej sekcji.
Udzielenie licencji testerom
Informacje o konfigurowaniu testerów licencji znajdziesz w artykule Testowanie rozliczeń w aplikacji za pomocą licencjonowania.
Korzystanie z testerów licencji zapewnia te korzyści:
- Zwykle Biblioteka płatności w Google Play jest blokowana w przypadku aplikacji, które nie są podpisane i przesłane do Google Play. Testerzy licencji mogą pominąć to sprawdzenie, co oznacza, że możesz instalować aplikacje z zewnętrznych źródeł na potrzeby testowania, nawet w przypadku aplikacji korzystających z wersji debugowania z podpisami debugowania, bez konieczności przesyłania nowej wersji aplikacji. Pamiętaj, że nazwa pakietu musi być zgodna z nazwą aplikacji skonfigurowanej w Google Play, a konto Google musi być kontem testera licencji w Konsoli Play.
- Testerzy licencji mają dostęp do testowych form płatności, które pozwalają uniknąć obciążania ich prawdziwymi pieniędzmi za zakupy. Możesz też używać testowych form płatności, aby symulować określone sytuacje, np. odrzucenie płatności. Na ilustracji 1 widać, jak te testowe formy płatności wyświetlają się w procesie zakupu.
- Testerzy licencji mogą szybko testować funkcje subskrypcji.
Oto dodatkowe informacje o procesie zakupu testowego:
- Zakupy testowe korzystają z tego samego procesu zakupu w aplikacji co rzeczywiste zakupy.
- W przypadku zakupów testowych podatki nie są obliczane.
- Google Play informuje o zakupie testowym, wyświetlając powiadomienie na środku okna zakupu.
Konto, z którego dokonywany jest zakup, możesz sprawdzić, rozwijając okno zakupu. Uwaga:
- Konta testowe muszą być na urządzeniu z Androidem należącym do testera.
- Jeśli na urządzeniu jest więcej niż jedno konto, zakupu dokonuje się za pomocą konta, z którego pobrano aplikację.
- Jeśli żadne z kont nie pobrało aplikacji, zakup zostanie dokonany na pierwszym koncie.
Używaj ścieżek testów w Google Play do weryfikacji przed dystrybucją, np. umożliwiaj zespołowi kontroli jakości kwalifikowanie nowych wersji. Dzięki ścieżkom testów testerzy licencji mogą instalować i oceniać nieopublikowane wersje aplikacji w Google Play. Zwykli użytkownicy mogą dokonywać prawdziwych zakupów za pomocą standardowych form płatności.
Aby przetestować integrację Biblioteki płatności w Google Play za pomocą ścieżek testowych:
- Opublikuj aplikację na ścieżce testów. Pamiętaj, że po opublikowaniu aplikacji na ścieżce testowej może minąć kilka godzin, zanim będzie ona dostępna dla testerów.
- Upewnij się, że każdy tester wyraził zgodę na testowanie aplikacji. Na stronie dołączenia do testu testerzy zobaczą wyjaśnienie, na czym polega ich zadanie, i będą mogli zgodzić się na udział w teście.
Integrację możesz przetestować na dowolnym urządzeniu z Androidem w wersji 1.6 lub nowszej. Na urządzeniu musi być zainstalowana najnowsza wersja aplikacji Google Play. Ogólne informacje o konfigurowaniu urządzenia do tworzenia aplikacji na Androida znajdziesz w artykule Korzystanie z urządzeń sprzętowych.
Laboratorium Płatności w Play
Play Billing Lab to aplikacja na Androida, która pomaga deweloperom testować integrację z systemem rozliczeniowym Google Play. Umożliwia ona wygodne testowanie funkcji płatności, szybszą integrację i wdrażanie aplikacji z większym poczuciem pewności. Aplikację Play Billing Lab możesz pobrać i zainstalować ze Sklepu Play.
Laboratorium płatności w Play umożliwia podczas testowania:
- Zmień kraj w Google Play w aplikacji Play Billing Lab i zastosuj ustawienia do testu. Umożliwia to testowanie niestandardowych funkcji w różnych krajach i regionach niezależnie od tego, gdzie tester przeprowadza testy.
- wielokrotne testowanie okresów próbnych lub ofert dla nowych użytkowników na tym samym koncie,
- Testowanie zmian cen subskrypcji bez wpływu na innych aktywnych subskrybentów
- Przyspieszanie przejścia subskrypcji w inny stan, aby przyspieszyć odnawianie subskrypcji lub jednym kliknięciem przenieść subskrypcję testową w okres prolongaty lub stan zawieszenia konta, co przyspieszy testowanie.
- Testowanie rzeczywistych form płatności w celu pominięcia niektórych sygnałów ryzyka związanych z procesem zakupu.
Testowanie produktów kupowanych raz
Testowanie produktów konsumpcyjnych
Podczas testowania produktów konsumpcyjnych sprawdź różne sytuacje, w tym:
- Udany zakup, w którym użytkownik otrzymuje produkt. W przypadku testera licencji możesz użyć formy płatności Instrument testowy, zawsze zatwierdza.
- Zakup, w przypadku którego nie udało się obciążyć formy płatności, a użytkownik nie powinien otrzymać produktu. Użytkownik licencji testowej może używać formy płatności Instrument testowy, zawsze odrzuca.
- Upewnij się, że produkty można kupić wiele razy.
Sprawdź, czy zakupy są prawidłowo potwierdzane zgodnie z opisem w sekcji Przetwarzanie zakupów. W przypadku zakupów dokonanych przez testerów licencji zwrot środków zostanie przyznany po 3 minutach, jeśli aplikacja nie potwierdzi zakupu. Otrzymasz e-maila z informacją o anulowaniu. Możesz też sprawdzić, czy zamówienie zostało zwrócone po 3 minutach, na karcie Zamówienia w Konsoli Google Play.
Testowanie produktów, które się nie zużywają
Produkty niekonsumpcyjne należy testować tak samo jak produkty konsumpcyjne, ale musisz sprawdzić, czy nie można ich ponownie kupić w aplikacji. Pamiętaj, aby potwierdzić zakup zarówno produktów niekonsumpcyjnych, jak i konsumpcyjnych (w stosownych przypadkach), ponieważ logika przetwarzania tych 2 rodzajów zakupów jest różna.
Testowanie oczekujących zakupów
Przetestuj oczekujący zakup, w przypadku którego produkt powinien zostać przyznany, gdy stan zakupu zmieni się na PURCHASED. Testerzy licencji mają dostęp do 2 narzędzi testowych do opóźnionych form płatności, w których płatność jest automatycznie dokonywana lub anulowana po kilku minutach.
Dokonaj zakupu z użyciem opóźnionej formy płatności Powolna karta testowa, odrzucenie następuje po kilku minutach, jak pokazano na rysunku 3. Uruchom ponownie aplikację i sprawdź, czy zakup nie został przyznany.
Rysunek 3. Testowanie zakupu za pomocą odrzuconej powolnej karty testowej. Dokonaj zakupu z użyciem opóźnionej formy płatności Powolna karta testowa, zatwierdzenie następuje po kilku minutach, jak pokazano na ilustracji 4. Odczekaj kilka minut i sprawdź, czy zakup został zrealizowany.
Rysunek 4. Przetestuj zakup za pomocą zatwierdzonej powolnej karty testowej.
Więcej informacji znajdziesz w artykule Obsługa transakcji oczekujących.
Testowanie zwrotów środków zainicjowanych przez użytkownika
Testerzy licencji mają dostęp do narzędzia testowego, które umożliwia symulowanie obciążenia zwrotnego zainicjowanego przez użytkownika.
Dokonaj zakupu za pomocą instrumentu testowego Karta testowa, zatwierdza płatność, a następnie realizuje obciążenie zwrotne, jak pokazano na rysunku 5. Wkrótce potem system powinien zostać poinformowany o dostarczeniu zakupu testowego i obciążeniu za niego zwrotem środków na odpowiednich platformach. Na przykład po dokonaniu zakupu powinna pojawić się wiadomość PendingRefundReviewNotification.
Rysunek 5. Przetestuj zakup za pomocą karty testowej, która zatwierdza płatność, a następnie realizuje obciążenie zwrotne.
Testowanie funkcji dostępnych w ramach subskrypcji
Procesy zakupu produktów kupowanych raz i subskrypcji są podobne, ale w przypadku subskrypcji występują dodatkowe scenariusze, takie jak udane lub odrzucone odnowienia subskrypcji. Aby przetestować odnowienia, możesz użyć metod płatności Karta testowa, zawsze zatwierdza i Karta testowa, zawsze odrzuca, które są dostępne dla testerów licencji, jak pokazano na ilustracji 1. Użyj tych instrumentów płatniczych, aby przetestować scenariusze inne niż scenariusz udanej subskrypcji.
Podobnie jak w przypadku produktów kupowanych raz, sprawdź, czy zakupy są prawidłowo potwierdzane zgodnie z opisem w sekcji Przetwarzanie zakupów. W przypadku zakupów od testerów licencji zakup jest zwracany po 3 minutach, jeśli aplikacja nie potwierdzi zakupu, a Ty otrzymasz e-maila o anulowaniu. Możesz też sprawdzić, czy zamówienie zostało zwrócone po 3 minutach, na karcie Zamówienia w Konsoli Google Play.
Okresy odnowienia
Subskrypcje testowe odnawiają się szybciej niż rzeczywiste subskrypcje i mogą być odnawiane maksymalnie 6 razy, nie licząc bezpłatnych okresów próbnych i okresów wprowadzających.
W tabeli poniżej znajdziesz czasy odnowienia testów w przypadku subskrypcji o różnym czasie trwania. Podane czasy są przybliżone. Możesz zauważyć niewielkie różnice w dokładnym czasie wystąpienia zdarzenia. Aby zrekompensować różnice, po każdej dacie wygaśnięcia subskrypcji wywołuj interfejs API, aby wyświetlić bieżący stan.
| Okres subskrypcji produkcyjnej | Odnowienie subskrypcji testowej |
| 1 tydzień | 5 minut |
| 1 miesiąc | 5 minut |
| 3 miesiące | 10 minut |
| 6 miesięcy | 15 minut |
| 1 rok | 30 minut |
Funkcje subskrypcji oparte na czasie, takie jak bezpłatne okresy próbne, są również skracane na potrzeby testów. W tabeli poniżej podano okresy testowania funkcji subskrypcji opartych na czasie:
| Funkcja | Okres testowy |
| Zawieszenie konta | 10 minut |
| Bezpłatna wersja próbna | 3 minuty |
| Okres prolongaty | 5 minut |
| Okres obowiązywania ceny początkowej | Taki sam jak okres testowy subskrypcji |
| Wstrzymanie (1 miesiąc) | 5 minut |
| Wstrzymanie (2 miesiące) | 10 minut |
| Wstrzymaj (3 miesiące) | 15 minut |
| Okres uzyskiwania zgody na podwyższenie ceny (dotyczy tylko Korei Południowej) |
3 minuty |
| Potwierdzenie zakupu | 5 minut |
Przyspieszanie przejścia stanu subskrypcji
Możesz też użyć Play Billing Lab i testerów licencji, aby przyspieszyć okresy odnowienia subskrypcji testowych i przyspieszyć testowanie subskrypcji lub przenieść subskrypcję testową do okresu prolongaty lub stanu zawieszenia konta, aby przetestować scenariusze odrzucenia płatności, wykonując te czynności:
- Na panelu na karcie Ustawienia subskrypcji kliknij Zarządzaj.
- Wybierz aktywną subskrypcję, którą chcesz przetestować.
- Kliknij menu Stan subskrypcji.
- Aby zaktualizować stan subskrypcji, kliknij stan docelowy.
Po wybraniu w menu stanu subskrypcji docelowej stan subskrypcji testowej zostanie wkrótce zaktualizowany.
Uwaga:
- Zanim zaczniesz korzystać z funkcji przyspieszonego przejścia na inny stan subskrypcji, musisz potwierdzić subskrypcje testowe.
- Gdy przeniesiesz subskrypcję testową w stan okresu prolongaty lub zawieszenia konta, Twoja forma płatności zostanie automatycznie odrzucona. Po przywróceniu subskrypcji testowej Twoja forma płatności zostanie automatycznie zatwierdzona.
- Proces zmiany stanu subskrypcji może potrwać kilka sekund.
- Gdy trwa zmiana stanu subskrypcji, funkcja zmiany ceny subskrypcji jest niedostępna.
- Jeśli odnowisz subskrypcję testową, gdy obowiązuje zmiana ceny, Play zastosuje nową cenę, jeśli użytkownik ją zaakceptował. Jeśli jednak nowa cena wymaga akceptacji użytkownika, a użytkownik jeszcze jej nie zaakceptował, Google Play anuluje subskrypcję.
Oferty dotyczące okresu próbnego
Dzięki funkcji testowania ofert próbnych w Play Billing Lab tester licencji może testować i korzystać z bezpłatnych okresów próbnych lub ofert dla nowych użytkowników nieograniczoną liczbę razy, zaznaczając pole wyboru Testuj bezpłatny okres próbny lub ofertę dla nowych użytkowników i stosując zmiany. Eliminuje to konieczność tworzenia wielu kont w celu przetestowania oferty próbnej dostępnej tylko dla nowych subskrybentów.
zmiany cen.
Możesz też użyć Play Billing Lab i testerów licencji, aby przetestować zmiany cen subskrypcji bez wpływu na innych aktywnych subskrybentów, wykonując te czynności:
- Na panelu na karcie Ustawienia subskrypcji kliknij Zarządzaj.
- Wybierz aktywną subskrypcję, którą chcesz przetestować.
- Wpisz nową cenę.
- Zaznacz lub odznacz pole wyboru Rezygnacja użytkownika zgodnie z wymaganiami testu.
- Kliknij Zastosuj.
Po wprowadzeniu zmian cena zostanie zaktualizowana od następnego odnowienia tylko w przypadku testera. Nie wpłynie to na innych aktywnych subskrybentów. W przypadku subskrypcji testowej obowiązują wszystkie reguły dotyczące testerów licencji. Tester może wtedy przetestować aplikację pod kątem procesów podrzędnych wywoływanych przez zmianę ceny, takich jak powiadomienia o zmianie ceny.
Podczas planowania okresów testowych pamiętaj o tych kwestiach:
- Ze względu na krótki okres odnowienia w przypadku testerów licencji migracja ceny dokonana w konsoli może nie zostać zarejestrowana w przypadku testerów licencji. Aby można było przetestować powiadomienia i e-maile o zmianach cen, deweloperzy powinni odroczyć płatność o co najmniej godzinę po wprowadzeniu zmiany ceny.
- Obniżki cen nie mają okresu powiadomienia. Użytkownicy są powiadamiani o obniżeniu ceny wkrótce po migracji kohorty. Podczas testowania ta wartość nie ulega zmianie.
- W przypadku podwyżek cen czas wysyłania powiadomień testowych jest obliczany tak samo jak w przypadku rzeczywistych podwyżek:
- Pierwsza opłata jest pobierana w pierwszą rocznicę rozliczenia po obowiązkowym okresie powiadomienia.
- Czas powiadomienia jest obliczany wstecz od daty pierwszego obciążenia.
- Ostatnie powiadomienie jest zawsze wysyłane na minutę przed obciążeniem, niezależnie od okresu rozliczeniowego.
W tabeli poniżej znajdziesz okresy rozliczeniowe i okresy powiadomień w przypadku kilku rzeczywistych okresów rozliczeniowych:
| Rzeczywisty okres rozliczeniowy abonamentu podstawowego | Testowy okres rozliczeniowy | Okres powiadamiania o teście (regiony, w których wymagana jest zgoda użytkownika, i regiony, w których użytkownik może zrezygnować z udziału w teście, z 30-dniowym wyprzedzeniem) | Okres powiadomienia o testach (regiony, w których można zrezygnować z udziału w testach, z 60-dniowym wyprzedzeniem) |
| 1 tydzień | 5 minut | 5 minut | 10 minut |
| 1 miesiąc | 5 minut | 5 minut | 10 minut |
| 3 miesiące | 10 minut | 3 minuty | 6 minut |
| 6 miesięcy | 15 minut | 2 minuty | 4 minuty |
| 1 rok | 30 minut | 3 minuty | 6 minut |
Zgoda na podwyższenie ceny
Informacje o podwyższeniu ceny, które wymagają zgody użytkownika, będą dostępne w interfejsie purchases.subscriptionsv2.get API.
Przed wprowadzeniem podwyżki Google Play wysyła do odpowiednich użytkowników (w tym testerów licencji) 2 powiadomienia push i e-maile o podwyżce. Okres powiadomienia w przypadku testowania jest następujący:
| Harmonogram powiadomień | Okres powiadomienia testowego |
| Pierwsze powiadomienie | 3 minuty |
| Drugie (ostateczne) powiadomienie | 1 minuta |
Przypadki testowe
Kliknij Pokaż/Ukryj, aby rozwinąć sekcję i wyświetlić scenariusze testowe, których należy użyć do sprawdzenia integracji subskrypcji.
Testowanie transakcji oczekujących
Sprawdź, czy transakcje oczekujące są prawidłowo obsługiwane, a uprawnienia są odpowiednio aktualizowane, gdy stan zakupu zmieni się na PURCHASED. Testerzy licencji mają dostęp do 2 narzędzi testowych do opóźnionych form płatności, w przypadku których płatność jest automatycznie realizowana lub anulowana po kilku minutach.
Dokonaj zakupu z użyciem formy płatności z opóźnieniem Powolna karta testowa, odrzucenie następuje po kilku minutach, jak pokazano na ilustracji 9. Uruchom ponownie aplikację i sprawdź, czy zakup nie został przyznany.
Rysunek 9. Testowanie zakupu za pomocą odrzuconej powolnej karty testowej. Dokonaj zakupu z opóźnioną formą płatności Powolna karta testowa, zatwierdzenie następuje po kilku minutach, jak pokazano na ilustracji 10. Odczekaj kilka minut i sprawdź, czy zakup został zrealizowany.
Rysunek 10. Przetestuj zakup za pomocą zatwierdzonej powolnej karty testowej.
Testowanie kodów promocyjnych
W Konsoli Google Play możesz tworzyć kody na potrzeby własnych testów. Pamiętaj, że w każdym kwartale możesz utworzyć maksymalnie 500 kodów promocyjnych na wszystkie produkty zarządzane w aplikacji.
Przetestuj te scenariusze wykorzystania kodu promocyjnego:
- Gdy kod promocyjny zostanie wpisany w oknie zakupu, które zostało otwarte w aplikacji.
- Gdy kod promocyjny zostanie wykorzystany w aplikacji Sklep Google Play.
- Gdy kod promocyjny zostanie wykorzystany na stronie https://play.google.com/store za pomocą przycisku Wykorzystaj w menu po lewej stronie.
W ramach tych scenariuszy przetestuj wykorzystywanie kodów na jak najwięcej sposobów. Przeprowadź co najmniej te testy:
- Wykorzystanie przed zainstalowaniem aplikacji.
- Wykorzystanie podczas działania aplikacji na pierwszym planie. Pamiętaj, że do tego testu potrzebujesz innego urządzenia, na którym możesz przetestować aplikację Sklep Google Play. Sprawdź, czy kody można wykorzystać na różnych ekranach aplikacji.
- Realizacja w trybie wielu okien, w którym jednocześnie wyświetlane są Twoja aplikacja i aplikacja Sklep Google Play.
W przypadku każdego testu upewnij się, że element został prawidłowo wykryty i że użytkownik otrzymał powiadomienie.
Testowanie procesu zakupu w różnych regionach
Możesz przetestować proces zakupu w różnych regionach za pomocą aplikacji Play Billing Lab. Aby z niej korzystać, musisz być testerem licencji. Aby to zrobić:
- Zarejestruj użytkownika z dostępem do płatności w aplikacji jako testera licencji.
- Zaloguj się w aplikacji Play Billing Lab jako ten sam użytkownik.
- Wybierz wymagany kraj i zastosuj zmianę w Play Billing Lab.
Uruchom proces zakupu w testowanej aplikacji.
Rysunek 11. Testowanie procesu zakupu w różnych regionach.
Play Billing Lab umożliwia testowanie regionalnej kwalifikowalności oferty i wrażeń użytkowników w dowolnym regionie, niezależnie od tego, gdzie fizycznie przeprowadzasz testy.
Testowanie procesu zakupu przy użyciu rzeczywistych form płatności
Możesz przetestować proces zakupu za pomocą rzeczywistych form płatności w aplikacji na Androida Play Billing Lab.
Aby przetestować rzeczywiste formy płatności:
- Zarejestruj użytkownika konta Google jako testera licencji.
- Zaloguj się w aplikacji Play Billing Lab jako ten sam użytkownik.
- Włącz rzeczywiste formy płatności w aplikacji Play Billing Lab.
- Uruchom ponownie proces zakupu w testowanej aplikacji.
Limity wydatków w przypadku wycofanych aplikacji
Aplikacje, które są w fazie wersji roboczej lub zostały opublikowane na ścieżce testu wewnętrznego, podlegają limitom wydatków.
Google Play wymusza stosowanie ograniczeń w przypadku tych elementów:
- Transakcje dzienne: liczba transakcji, które użytkownik może przeprowadzić dziennie we wszystkich nieopublikowanych aplikacjach.
- Wartość zamówienia: maksymalna kwota pojedynczej transakcji.
- Dzienne wydatki łącznie:łączne dzienne wydatki użytkownika we wszystkich nieopublikowanych aplikacjach.
Limity te resetują się co 24 godziny.
Jeśli użytkownik przekroczy którykolwiek z tych limitów podczas testowania aplikacji, w koszyku zobaczy komunikat o błędzie, a transakcja zostanie zablokowana.