We at SWQA India perform Speech or Voice Application testing for our clients wherein the voice application is tested for its Usability, Clarity of Prompts, Recognition, Different Grammars (e.g. IBM, Nuance), Response time, Number of Timeout, Number of No matches, Number of Misrecognition, Rendered VXML and Load testing.

Basic Testing of Voice Application involves the following procedure:

  • User/Caller to the Voice Application:
    This actor will make a call and test if the flow is working properly, all the prompts are played, voice recognition is good. Response time from application is within permissible limit.
  • Administrator of Voice Application:
    This actor is a user of administrative interface (e.g. Web application) of the voice application, who will check if all the changes like configuration, logging, prompts etc. made by web interface actually take place and the reports displayed are correct.
  • Test Analyst:
    This actor will monitor complete system on console as well as by using test harness execute the test cases. For using the harness, a console will be required from where the Test analyst will inject the data and monitor interactions of all the sub-systems.

The above mentioned testing methodology is governed by testing following criteria:

Administrative console

  • Web Application/Client server application
  • Testing the different URLs, controls
  • Testing that actual modifications are taking place

  • Routing of calls
  • Processing of the calls
  • Compatibility with different telephony cards (Dialogic, Acculab etc.)
  • Load testing
Different web services used in the system

  • What's the system behavior when a particular web service is down?
  • Interaction with an external system like CapScan
  • When valid data is passed via a particular web service, is it giving valid output? For example, if one specific Post code is provided then is the system giving out valid street names?
  • What's the system behavior when invalid data is passed through the web services and what is the output?
  • Failover and recovery of the web services
  • Test for behavior of the system when one of the external systems is down
  • Behavior of the system when there is a concurrency. Check for CPU, memory usage, response time
Backend integration with Client’s system

  • Integration with client database
  • Response time of the system