Visual Studio Codeでスキルをテストする
Alexa Skills Toolkit for Visual Studio Code(ASK Toolkit for VS Code)を使うと、スキルをローカルで作成しながらテストできます。別のツールやページに移動しなくても、VS Code Alexaシミュレーターページからローカルスキルをテストできます。また、Alexa開発者コンソールのAlexaシミュレーターやASK CLIなど、他の方法でローカルスキルをテストすることもできます。
前提条件とインストール手順については、ASK Toolkit for VS Codeで開発を始めるを参照してください。
前提条件
ローカルスキルを呼び出す前に、ask-sdk-local-debug
をスキルプロジェクトに追加します。SDK言語の手順に従って、ask-sdk-local-debug
をスキルに追加します。
ローカルAlexaスキルのテストを準備する
VS CodeでローカルAlexaスキルのテストを準備する
-
次の手順で、スキルの
launch.json
ファイルを作成します(まだ作成していない場合)。- Runメニューを開き、Add Configuration…を選択します。Select Environmentダイアログが表示されます。
-
Node.js、Pythonのいずれかのプログラミング言語を選択します。
launch.json
ファイルがプロジェクトに追加され、エディターが開きます。次のようなコードが表示されます。{ "version": "0.2.0", "configurations": [ { "type": "node", "request": "launch", "name": "Launch Program", "skipFiles": [ "<node_internals>/**" ], "program": "${file}" } ] }
-
次の手順で、Alexaデバッガーのコンフィギュレーションを
launch.json
ファイルに追加します(まだ追加していない場合)。- Runメニューを開き、Add Configuration…を選択します。オプションのリストが表示されます。
-
ASK: Alexa Skills Debugger (Node.js)、ASK: Alexa Skills Debugger (Python)のいずれかを選択します。コンフィギュレーションコードが
launch.json
ファイルに追加されます。次のようなコードが表示されます。{ "version": "0.2.0", "configurations": [ { "name": "Debug Alexa Skill (Node.js)", "type": "node", "request": "launch", "program": "${command:ask.debugAdapterPath}", "args": [ "--accessToken", "${command:ask.accessToken}", "--skillId", "${command:ask.skillIdFromWorkspace}", "--handlerName", "handler", "--skillEntryFile", "${workspaceFolder}/lambda/index.js" ] }, { "type": "node", "request": "launch", "name": "Launch Program", "skipFiles": [ "<node_internals>/**" ], "program": "${file}" } ] }
- 変更を
launch.json
ファイルに保存します。
-
Alexaデバッガーコンフィギュレーションで、開発者アカウントのあるAlexaリージョンを指定します。有効なリージョンは、ヨーロッパ(
EU
)、極東(FE
)、北米(NA
)のいずれかです。デフォルトのリージョンは北米です。- 開発者アカウントのマーケットプレイスに対応するAlexaリージョンについては、リソースをさまざまなAWSリージョンでホスティングするの表を参照してください。
launch.json
ファイルを開きます。args
配列にリージョンを追加するか、既存のリージョンを編集します。リージョンの有効な値は、EU
、FE
、NA
のいずれかです。コードは次のようになります。重要: 前の行の末尾には必ずカンマを追加してください。{ "version": "0.2.0", "configurations": [ { "name": "Debug Alexa Skill (Node.js)", "type": "node", "request": "launch", "program": "${command:ask.debugAdapterPath}", "args": [ "--accessToken", "${command:ask.accessToken}", "--skillId", "${command:ask.skillIdFromWorkspace}", "--handlerName", "handler", "--skillEntryFile", "${workspaceFolder}/lambda/index.js", "--region", "FE" ] }, { "type": "node", "request": "launch", "name": "Launch Program", "skipFiles": [ "<node_internals>/**" ], "program": "${file}" } ] }
- 変更を
launch.json
ファイルに保存します。
ローカルのAlexaスキルをテストする
この手順を実行する前に、前提条件とローカルAlexaスキルのテストを準備するの手順を完了してください。
VS CodeでローカルAlexaスキルをテストする
-
Runメニューを開き、Start Debuggingを選択します。
スキルコードが開始し、WebSocketがローカルマシンとAlexaプロキシサービスを接続します。スキルへのリクエストは、Alexaプロキシサービスとの接続が開いている限り、ローカルスキルコードに直接ルーティングされます。接続は1時間開いたままになります。1つのスキルに複数の接続を作成することはできません。
-
次の方法のいずれかでスキルをテストします。
- VS CodeのAlexaシミュレーター。詳細については、VS CodeのAlexaシミュレーターでスキルをテストするを参照してください。
- 開発者コンソールのAlexaシミュレーター。詳細については、開発者コンソールでスキルをテストするを参照してください。
- Echo ShowなどのAlexaデバイス、またはAlexaアプリ。
- ASK CLI。
- SMAPIコマンド。
ローカルでのテストを停止するには、Runメニューを開いてStop Debuggingを選択します。これにより、Alexaプロキシサービスとの接続が終了し、Alexaはローカルスキルではなくスキルに設定したエンドポイントを呼び出すようになります。
VS CodeのAlexaシミュレーターでスキルをテストする
VS Code IDEのSkill Simulationページからスキルをテストできます。スキルシミュレーターを使うと、VS Code IDEから移動することなくAlexaに発話を送信し、応答を受け取ることができます。
以下は、Visual Studio Code IDEのSkill Simulationページのスクリーンショットです。

VS CodeのAlexaシミュレーターを使用する
VS CodeのAlexaシミュレーターでローカルスキルをテストする
- アクティビティバーで、Alexaアイコンをクリックします。Alexa Skills Toolkitサイドバーが表示されます。
- Skills、スキル、Test skillの順に展開し、Open simulatorを選択します。Skill Simulationページが表示されます。
- Talk to AlexaセクションのSkill stageで、Developmentを選択します。このステップでは、スキルのテストをオンにし、ページ下部にある発話テキストボックスを有効にします。
- Localeで、テストする言語とロケールを選択します。スキルには、選択した言語とロケールの対話モデルが含まれる必要があります。詳細については、対話モデルを参照してください。
-
ページ下部のテキストボックスに発話を入力し、Sendをクリックします。リクエストがAlexaに送信され、応答が表示されます。応答を受信したら、以下を実行できます。
- Skill I/Oタブを選択すると、最近のリクエストと応答のJSONを確認できます。
- Execution Infoタブを選択すると、検討されたインテントなどの情報を確認できます。
- Device Previewタブを選択すると、スキルからの応答がデバイスの画面にどう表示されるかを確認できます。Change viewportを使用して、round、small、medium、large、full-screen TVからビューを選択します。
- 必要に応じて、上述のステップを繰り返します。新しい発話を入力するか、キーボードの上下矢印キーを使って前の発話を入力します。Alexaが前のリクエストに応答するまでは、新しい発話を入力できません。
- Talk to Alexaセクションの発話と応答は、いつでもResetボタンをクリックして消去できます。
- テキストボックスに
exit
と入力してSendを送信すると、スキルのテストをオフにしてテストセッションを終了できます。
VS CodeのAlexaシミュレーターでセッションの保存や再生を行う
スキルをテストしている間、同じ発話を繰り返しAlexaに送信する場合があります。テストセッション中に入力した発話を保存して、後で再生できます。
VS CodeのAlexaシミュレーターでテストセッションの保存や再生を行う
- セッションを保存するには、Exportボタンをクリックします。発話がjsonとして保存され、ファイルを保存する場所を指定するようプロンプトが表示されます。
- セッションを再生するには、Alexa Skills Toolkitサイドバーで、Skills、スキル、Test skillの順に展開し、Replay sessionを選択します。以前に保存したファイルの場所を指定するようプロンプトが表示されます。ファイルを指定したら、シミュレーターで発話が再生されます。
- テキストボックスに
exit
と入力してSendを送信すると、スキルのテストをオフにしてテストセッションを終了できます。