スキル内課金のテストガイド
スキル内商品を含むスキルを申請する前に、スキルの認定ガイドラインをすべて満たしている必要があります。また、スキル内商品を詳細にテストして、このトピックで説明されている認定要件を満たしていることも確認してください。
- スキルをテストする
- 商品をテストする
- ロケールを使用して別の地域向け商品をテストする
- テスト購入をリセットする
- スキルを有効化および無効化したときの消費型購入をテストする
- スキル内商品を含むスキルのベータテストを行う(オプション)
- 公開中のスキルをテストする
スキルをテストする
カスタムスキルのガイドラインに従って、スキルを詳細にテストしてください。詳細については、カスタムスキルのテストとデバッグを参照してください。
商品をテストする
スキルと購入エクスペリエンスを詳細にテストします。スキル内課金を含むスキルは、Alexaスキルをテストする方法で説明されている任意の方法を使用してテストできます。スキルが開発ステージの場合は、商品の購入、拒否、返金やキャンセルの依頼のテストには開発者アカウントを使用します。また、消費型商品の購入と使用のテストも行います。スキルに関連付けられた開発者アカウントでは、スキル内商品に対して課金されないことに注意してください。
ロケールを使用して別の地域向け商品をテストする
スキルが複数の地域でスキル内課金をサポートしている場合、Alexaシミュレーターを使用して、その地域のデフォルトのロケールでサポートしている各地域でスキル内課金をテストできます。Alexaシミュレーターを使用すると、地域ごとにユーザーアカウントを作成する必要がなくなりますが、テストは実際のEchoデバイスでテストする必要があります。
Alexaシミュレーターを使用して、別の複数の地域でスキル内課金をテストするには、以下の手順に従います。
- Alexa Skills Kit開発者コンソールにサインインします。
- 一覧からスキルを検索します。スキルのアクションで、編集を選択します。
- ページの上部で、テストを選択します。
- 左上にあるスキルテストが有効になっているステージで、開発中を選択します。
-
Alexaシミュレーターのロケールのドロップダウンリストで、スキル内課金をテストするロケールを選択します。
- 音声またはテキストでスキルを起動して、通常どおりに対話します。選択したロケールに応じて、Alexaシミュレーターは、その地域(マーケットプレイス)のデフォルトロケールに対応した価格を使用して、スキル内課金を使用します。en-USのデフォルトロケールは
amazon.com
、en-GBはamazon.co.uk
、de-DEはamazon.de
、ja-JPはamazon.co.jp
になります。
テスト購入をリセットする
開発者アカウントでスキル内商品をテストする場合は、スキル内課金のステータスをリセットできます。商品は次のようにリセットされます。
entitled
がNOT_ENTITLED
にリセットpurchasable
がPURCHASABLE
にリセットactiveEntitlementCount
が0にリセット
開発者コンソールを使用して商品の購入をリセットするには、次を実行します。
- 開発者コンソールでカスタムスキルを編集します。
- ビルドページに移動して、スキル内課金をサポートするロケールを選択します。
- スキルビルダーのチェックリストで、スキル内商品をクリックします。
- このスキルにリンクしましたリストで商品を見つけ、テスト購入をリセットをクリックします。
ASK CLIを使用して商品の購入をリセットするには、reset-isp-entitlement
コマンドを使用します。
スキルを有効化および無効化したときの消費型購入をテストする
消費型購入の場合、ユーザーがスキルを無効化したあと再有効化した場合でも、ユーザーのインベントリーが保持されていることをテストします。このテストを行う際は、消費型アイテムをいくつか購入してそのアイテムを使用し、activeEntitlementCount
(購入の合計数)が、ユーザーが保持しているアイテム数に正確に対応していないことを確認します。
消費型購入を行ったユーザーのuserId
の保持方法の詳細については、ユーザーがスキルを無効化してから再有効化した場合にユーザーインベントリーを管理するを参照してください。
ユーザーがスキルを無効にしたときにAlexaSkillEvent.SkillDisabled
イベントを使用してクリーンアップを実行する場合は、必ず以下の条件をテストしてください。
- 消費型アイテムを持つユーザーがスキルを無効にした場合、クリーンアップロジックはユーザーのインベントリーを保持します。
- 消費型アイテムを持っていないユーザーがスキルを無効にした場合、クリーンアップロジックはそのユーザーに関連付けられたデータを安全に消去できます。この場合、ユーザーがスキルを再有効化すると、そのユーザーには新しい
userId
が割り当てられます。
スキル内商品を含むスキルのベータテストを行う(オプション)
スキル内課金を含むスキルの認定を申請する前に、ベータテストツールを使用して、さらにテストすることができます。スキルのベータテストを行う場合は、次のようになります。
- ベータテスターは、ベータテスト中はスキル内課金に課金されません
- スキルがベータテストを受けている間は、ベータテスターの商品をリセットできません
- ベータテストが終了すると、購入された商品は自動的にリセットされます。スキルが公開されると、ユーザーはスキル内課金に対して課金されます
消費型商品のベータテスト
消費型商品を提供するスキルのベータテストを計画する場合は、ベータユーザーのベータ版インベントリーを個別に管理する必要があります。スキルが公開されると、Alexaによってユーザーの購入がリセットされ、activeEntitlementCount
が0に戻ります。ベータ版でユーザーが購入したアイテムは、公開中のスキルでは使用できません。
たとえば、ベータユーザーがベータ版で「ヒント5個パック」を3回購入したとします。このユーザーのインベントリーは15個になります。スキルが公開されると、保存されたインベントリー(15)は、公開中の実際の購入(0)と同期しなくなります。
ベータ版と公開版のインベントリーを分けておくには、商品のpurchaseMode
プロパティを確認します。ベータユーザーの場合は、TEST
が返されます。公開中のスキルの場合は、LIVE
が返されます。
公開中のスキルをテストする
前述のとおり、スキルに関連付けられた開発者アカウントではスキル内課金の料金は発生しません。そのため、エンドユーザーのエクスペリエンスを完全にテストするには、開発者アカウント以外のアカウントで最終テストに合格する必要があります。このアカウントではスキル内課金に対して課金されます。