MagicPodでは、モバイルアプリのアプリ内課金(In-App Purchase, IAP)のE2Eテストには対応していません。
AppleやGoogleが提供する課金システムには、自動化ツールから操作できない制限があるためです。
目次
対応していない内容
App Store や Google Play Store 経由の購入やサブスクリプション処理は、自動テストで実行できません。
課金画面の表示や購入ボタンのタップ操作までは確認できますが、実際の課金完了まではテストできません。
回避策
自動テストで課金後の状態を確認したい場合は、次のような方法をご検討ください。
-
サーバー側のモックを使う
課金が完了したと見なすレスポンスを返すように、サーバーを設定してください。「テストユーザー」などの条件で課金済みの状態をシミュレーションできます。 -
テスト用のモードをアプリに組み込む
開発用ビルドでは、課金処理をスキップして課金済みの状態を再現することが可能です。
例:設定画面に開発者向けスイッチを設け、課金済みに切り替える。 -
手動テストと組み合わせる
AppleやGoogleが提供するテスト用アカウントを使って、課金部分は手動で検証してください。
今後の対応
現時点では、外部ツールから課金処理を完全に自動化することはできません。
今後AppleやGoogleの仕様変更があれば、対応を検討してまいります。
よくある質問
Q. 購入ボタンをタップするテストはできますか?
A. はい、購入ボタンの表示やタップ操作までは自動テストで可能です。
Q. サブスクリプションの更新やキャンセルも自動テストできますか?
A. できません。サブスクリプションの更新・キャンセル・返金処理はAppleおよびGoogleの管理下にあり、自動テストからは操作できません。これらの処理は各プラットフォームのテストアカウントを使って手動で行う必要があります。
Q. 課金後の画面(プレミアムコンテンツなど)は自動テストできますか?
A. はい、可能です。たとえば「課金済みユーザー」としてアプリ内の状態をシミュレートすれば、課金後の動作(画面表示や機能制限の解除など)は自動テストで確認できます。