スキル内課金スキルのテスト



スキル内課金スキルのテスト

スキルを認定に申請する前に、スキル機能とスキル内課金フローをテストしてください。カスタムスキルのテストの詳細については、カスタムスキルのテストとデバッグを参照してください。スキルは、カスタムスキルの認定要件も満たしている必要があります。認定テストの詳細については、スキルの認定と公開を参照してください。

購入フローをテストする

開発者アカウントを使用して、購入フローの全体をテストします。以下のテストシナリオを含めます。

  • 購入
  • 購入を却下する
  • 購入の払い戻し
  • 購入をキャンセルする
  • 消費型商品を使用する
  • サブスクリプションを更新する

スキルが開発中ステージの場合、スキルに関連付けられた開発者アカウントは、スキル内商品に対して課金されることはありません。開発者コンソールでのテストの詳細は、スキルのテストを参照してください。

テスト購入をリセットする

開発者アカウントでスキル内商品をテストする場合は、スキル内課金のステータスを次の方法でリセットできます。

  • entitledNOT_ENTITLEDにリセット
  • purchasablePURCHASABLEにリセット
  • activeEntitlementCountが0にリセット

開発者コンソールを使用して商品の購入をリセットするには、次を実行します。

  1. 開発者コンソールでカスタムスキルを編集します
  2. ビルドページで、スキル内課金をサポートする言語を選択します。
  3. スキルビルダーのチェックリストで、スキル内商品をクリックします。
  4. このスキルにリンクしましたリストで商品を探して、テスト購入をリセットをクリックします。

ASK CLIを使用して商品の購入をリセットするには、reset-isp-entitlementコマンドを使用します。

異なるリージョンで商品をテストする

スキルが複数のリージョンでスキル内課金をサポートしている場合、Alexaシミュレーターを使用して、各リージョン(マーケットプレイス)のデフォルトのロケールでサポートしているスキル内課金をテストできます。Alexaシミュレーターでは、開発者アカウントを使用して各リージョンをテストできます。実際のEchoデバイスでテストする場合は、リージョンごとにアカウントを作成する必要があります。

各リージョンでスキル内課金をテストするには、次の手順を実行します。

  1. Alexa開発者コンソールにログインします。
  2. 一覧からスキルを検索します。アクション編集を選択します。
  3. ページの上部で、テストを選択します。
  4. テストページのこのスキルでは、テストは無効になっています開発中を選択します。
  5. Alexaシミュレーターの下で、購入をテストするロケールを選択します。

    Alexaシミュレーターを使用してスキル内課金をテストする
  6. 音声またはテキストを使用してスキルを開始し、適宜スキルを操作します。Alexaシミュレーターは、選択されたロケールに応じて、購入フローで地域のデフォルトロケールに対応した価格を使用します。en-USのデフォルトロケールはamazon.com、en-GBはamazon.co.uk、de-DEはamazon.de、ja-JPはamazon.co.jpになります。

スキルを有効化および無効化したときの消費型購入をテストする

スキルセッション間で、ユーザーの消費型商品の購入インベントリーを保存していることを必ず確認してください。ユーザーがスキルを無効にして、再度有効にした場合でも、スキルがユーザーのインベントリーを保持することを確認します。このテストを行う際は、消費型アイテムをいくつか購入してそのアイテムを使用し、activeEntitlementCount(購入の合計数)が、ユーザーが保持しているアイテム数に対応していないことを確認します。

詳細については、ユーザーがスキルを無効化してから再有効化した場合にユーザーインベントリーを管理するを参照してください。

ユーザーがスキルを無効にしたときにAlexaSkillEvent.SkillDisabledイベントを使用してクリーンアップを実行する場合は、必ず以下の条件をテストしてください。

  • 消費型アイテムを持つユーザーがスキルを無効にした場合、クリーンアップロジックはユーザーのインベントリーを保持します。
  • 消費型アイテムを持っていないユーザーがスキルを無効にした場合、クリーンアップロジックはそのユーザーに関連付けられたデータを消去します。ここで、Alexaはスキルを再度有効にすると、ユーザーに新しいuserIdを割り当てます。

スキル内商品を含むスキルのベータテストを行う(オプション)

スキルの認定を申請する前に、ベータテストツールを使用して、さらにテストすることができます。スキルのベータテストを行う場合は、次のようになります。

  • ベータテスターは、ベータテスト中はスキル内課金に課金されません。
  • ベータテスト中は、ベータテスターの商品をリセットすることはできません。
  • スキルの公開後は、Amazonはユーザーにスキル内課金の料金を請求します。

消費型商品のベータテスト

消費型商品を提供するスキルのベータテストを計画する場合は、ベータユーザーのベータ版インベントリーを個別に管理する必要があります。Amazonがスキルを公開すると、Alexaによってユーザーの購入がリセットされ、activeEntitlementCountが0に戻ります。ベータ版でユーザーが購入したアイテムは、公開中のスキルでは使用できません。

たとえば、ベータユーザーがベータ版で「ヒント5個パック」を3回購入したとします。このユーザーのインベントリーは15個になります。スキルが公開されると、保存されたインベントリー(15)は、公開中の実際の購入(0)と同期しなくなります。

ベータ版と公開版のインベントリーを分けておくには、商品のpurchaseModeプロパティを確認します。ベータユーザーの場合は、TESTが返されます。公開中のスキルの場合は、LIVEが返されます。

公開中のスキルをテストする

スキルに関連付けられた開発者アカウントでは、開発中のスキル内課金について料金は発生しません。エンドユーザーのエクスペリエンスを完全にテストするには、開発者アカウント以外のアカウントで最終テストに合格する必要があります。公開中のスキルのテストでは、Amazonはすべてのスキル内課金について請求を行います。