Automated Voice App Testing - What you need to know

Automated Voice App Testing - What you need to know

Authored by Ameex Technologies on 18 Jan 2019

Automated voice app testing will become a required skill soon enough. On the one hand, businesses need to know how to leverage this emerging technology and provide a better experience to their customers. While on the other hand, designers need to ponder how they can create and deliver the best voice experience possible. 

Testers, however, need to find any bugs and problems before anyone else can. Automated voice app testing will help streamline the operation and provide these apps faster and of a higher quality. But to do that, they will have to adapt their process to this new technology. 

What is a Voice Device?

As its name would suggest, a voice device is a gadget that's designed to get tasks done via conversation. Google Home or Amazon Echo are such examples, which can be used for a wide variety of things such as setting reminders, ordering food, or searching the internet. Mobile phones and tablets can also be configured to listen, but they are not devices that were built with this capability to be their first feature.  

The current leaders in the field are, of course, Google and Amazon, followed by Microsoft with Cortana and Apple with Siri. And even though there are similarities in building these voice apps, they are not the same. It means that there is no standardization in the field. So, as far as automated voice app testing is concerned, the best course of action would be to have a series of tests that can be executed across multiple platforms. 

Voice vs. Graphical User Interface

When it comes to automated voice app testing, it's important to remember that the first interaction between the user and the device happens via the Voice User Interface (VUI). As a natural form of communication, the user can ask the device to perform a specific action, and the voice app will be able to process and execute the request. 

By comparison, the graphical user interface (GUI) is there to limit the number of choices for the user's ease of navigation. The significant difference between VUI and GUI is that if the latter doesn't have an option available, the user can't access it, but with VUI, the user can always say it. So, this means that with GUI testing you will have a limited amount of data to input, while with VUI testing, the number of test cases can be limitless.

Voice App Architecture

If VUI testing was not enough, delivering a quality voice app can be a daunting challenge even for the most experienced. If a mobile app has a high rating, this doesn't automatically mean that it will do equally as well as a voice-first. 

A good testing strategy will, thus, have to start by understanding the underlying architecture of the system. In other words, you will have to comprehend every step of the process from the moment a user asks a question and until the task is fulfilled. 

  • The user starts giving the command by saying the trigger word (hot-word), say "Alexa..."
  • It is followed by the command, itself
  • The device will then send the voice stream to the AVS
  • The AVS will use speech-to-text technology for translation
  • It will then identify the skill name, map the user's spoken input to the skill's intent (which is preconfigured by the developer in the Interaction Model)
  • The AVS will then send a POST request to the skill’s endpoint 
  • It also attaches parsed data in the request’s JSON body.
  • The device's skill code will then process the request by calling other services
  • The device's skill will send back the response (which contains the output speech and directives) to the AVS
  • The AVS will send the voice stream to the output speech
  • The device will play back the speech to the user. 

These are the main steps that a straightforward command will involve. And as mentioned above, this is not something that even the most skilled of app-creators can achieve with ease. For more information on how to perform automated voice app testing, contact us today.