Skip to content
This repository has been archived by the owner on May 1, 2023. It is now read-only.

Latest commit

 

History

History
69 lines (39 loc) · 6.98 KB

4-testing.md

File metadata and controls

69 lines (39 loc) · 6.98 KB

Build An Alexa Feed Reader Skill

Voice User InterfaceLambda FunctionConnect VUI to CodeTestingCustomizationPublication

Testing Your Alexa Skill

So far, we have created a Voice User Interface and a Lambda function, and connected the two together. Your skill is now ready to test.

  1. Go back to the Amazon Developer Portal and select your skill from the list. You may still have a browser tab open if you started at the beginning of this tutorial.

  2. Open the Test Pane, by selecting the Test link from the top navigation menu.

  3. Enable Testing by activating the Test is enabled for this skill slider. It should be underneath the top navigation menu.

  4. To validate that your skill is working as expected, invoke your skill from the Alexa Simulator. You can either use the input box and type in the command to invoke or use your voice by clicking and holding the mic.

    • Type open followed by the invocation name you gave your skill in the Voice User Interface step. For example, open feed reader.

    • Use your voice by clicking and holding the mic on the side panel and saying "Open" followed by the invocation name you gave your skill. If you've forgotten the invocation name for your skill, revisit the Build panel on the top navigation menu and select Invocation from the sidebar to review it.

  5. Ensure your skill works the way that you designed it to.

    • After you interact with the Alexa Simulator, you should see the Skill I/O JSON Input and JSON Output boxes get populated with JSON data. You can also view the Device Log to trace your steps.
    • If it's not working as expected, you can dig into the JSON to see exactly what Alexa is sending and receiving from the endpoint. If something is broken, AWS Lambda offers an additional testing tool to help you troubleshoot your skill.
  6. Configure a test event in AWS Lambda. Now that you are familiar with the request and response boxes in the Service Simulator, it's important for you to know that you can use your requests to directly test your Lambda function every time you update it. To do this:

    1. Enter an utterance in the service simulator, and copy the generated Lambda Request for the next step.

    2. Open your Lambda function in AWS, open the Actions menu, and select Configure test events.

    3. Select Create New Test Event and choose any test event in the list, as they are just templated event requests, using "Alexa Start Session" is an easy one to remember.

    4. Type in an Event Name into the Event Name Dialog box. Delete the contents of the code editor, and paste the Lambda request you copied above into the code editor. The Event Name is only visible to you. Name your test event something descriptive and memorable. For our example, we entered an event name as "startSession". Additionally, by copying and pasting your Lambda Request from the service simulator, you can test different utterances and skill events beyond the pre-populated templates in Lambda.

    5. Click the Create button. This will save your test event and bring you back to the main configuration for your lambda function.

    6. Click the Test button to execute the "startSession" test event.

      This gives you visibility into four things:

      • Your response, listed in the "Execution Result."

      • A Summary of the statistics for your request. This includes things like duration, resources, and memory used.

      • Log output. By effectively using console.log() statements in your Lambda code, you can track what is happening inside your function, and help to figure out what is happening when something goes wrong. You will find the log to be incredibly valuable as you move into more advanced skills.

      • A link to your CloudWatch logs for this function. This will show you all of the responses and log statements from every user interaction. This is very useful, especially when you are testing your skill from a device with your voice. (It is the "Click here" link in the Log Output description.)

  7. Other testing methods to consider:

  8. If your sample skill is working properly, you can now customize your skill.