Testing IVR systems is a crucial part of the IVR design process and ensures that customers/users get high quality assistance with minimal requirement for human assistance. The testing process includes testing system functionality as well as testing the system’s performance under error conditions.

IVR SYSTEM TESTING: THE CHALLENGES

The ease and effectiveness of testing an IVR system is affected by several factors.

·       Finding the right mock-userbase: User attitudes and dispositions tend to vary greatly across different locations. A mock-userbase used to validate an IVR system of one market may not be appropriate for a different one. It is thus essential to take local demographic & cultural considerations into account while testing an IVR system for its human-interaction capabilities.

·       Accommodating changes: Most businesses will, at some point, have changes in the services they offer or the general hierarchy of their organization. This can result in anything from small changes in the menu to complete overhauls. Our menu-designing strategies and resource-allocation approaches must be evaluated to ensure that they allow for minimal cycle time in introducing & testing structural changes to the menu.

·       Technological Restrictions: IVR applications are often developed by employing proprietary tools. Automating test cases thus becomes difficult in client-specific environments. Tools & Middleware used by Airtel for example, may be different from those used by Vodafone and so on. It would take corporate level co-operation or expensive licenses to deal with this issue.

IVR TESTING SOLUTIONS

In order to ensure thorough testing of an IVR system, several considerations and tests need to be employed before the actual installation of the system takes place. The most important testing aspects for an IVR system have been listed below.

1.     IVR Program Flow Test

In order to ensure thorough testing of an IVR system, several considerations and tests need to be employed before the actual installation of the system takes place. The most important testing aspects for an IVR system have been listed below.

2.     Audio Testing

Audio Testing consists of two parts:

a) Audio Recording Test – This is performed to test that audio originating from user side is being recorded in a correct manner.

b) Audio Responses Verification Test – This is performed to ensure that each audio response to user queries/commands is clearly comprehensible, consists of all the necessary information, and plays out completely without interruptions/losses when it is invoked.

3.     Error & Anomalous Condition Testing

The possibilities of user stating the wrong command/query or pressing the wrong input key are quite significant. In such cases, the system needs to be tested to ensure that it clearly informs the user of their error and directs them on what needs to be done next. Furthermore, there are also cases of anomalous conditions such as communication breakdown and multiple buttons being pressed.

Common anomalous conditions such as the above need to be identified and the system needs to be tested to handle such cases.

4.     Database Testing

IVR systems make extensive usage of databases to provide users with the information they are looking for. There are two forms of database testing that needs to be performed in order to ensure smooth functioning of the system:

a) Testing Database Access – This step involves checking whether or not the system can retrieve the correct information at each point. This includes testing direct database access as well as database access performed over a network or the internet.

b) Testing Database Update – Each IVR transaction involves a user submitting their queries/information to the system. The IVR system needs to be tested to ensure that all such data originating from the user is updated appropriately in the database. Furthermore, testing needs to be performed to ensure that all such updated information is readily accessible when needed.

5. System Load Test

This step is to ensure that the system is thoroughly tested and configured to handle heavy loads of calls/queries/commands from users. The system and all its components need to be tested for their performance at expected peak loads.

6. Language Diversity Testing

In cases of advanced IVR systems that allow for inputs in multiple languages, all the previously mentioned testing aspects need to be considered for each individual language.

7. Automated IVR testing

Several automation tools can successful emulate human behavior while dialling/accessing an IVR system. Automation is especially useful to test DTMF systems where button-pressing patterns can be scripted. It is also extremely useful in IVR system load testing where scripts can be written to simulate large call/command/query requests. Some of the most popular automation tools include Asterisk and Hammer.

In Conclusion

From a testing standpoint, other factors such as intuitiveness of the system can also be considered by the QA team. As for the challenges, it is vital to figure out creative workarounds that minimize resource investment. At the end of the day, the goal is to build an effective IVR system that ensures that human-computer interaction is made as functional, simplified, cost-effective, and easy-to-use as possible.

By Raj Kasu May 12, 2017
Tags: Independent Software Vendor