By this time, you probably already know the initial steps in end-to-end testing: first, look at your infrastructure and second, test applications and voice quality. Now let’s take a look at voice portal/IVR testing.
The basic procedure is accomplished in a similar way to that of testing Applications and Voice Quality. You need to automate actual calls into the voice portal/IVR in a controlled way and measure the results at every stage. This is especially important in Unified Communications and Contact Center installations, where the structures are quite complex. Isolating performance issues at each layer enables you to speed the discovery of the source of any problem that might crop up.
Work Through a Variety of Test Cycles
Every layer of the pre-production environment should be put through a series of test cycles in order to ensure that everything is working correctly. This procedure must include low volume testing to develop a baseline, testing at increased volume, limited stress testing, and prolonged stress testing. For more details on these processes, read Take a Closer Look: End-to-end Application and Voice Quality Testing.
What Tests to Perform?
As you are developing your plan, you need to consider testing the following things:
- Verification of application flow
- Port verification
- Varied data
- Verification of application performance at peak volume
- Outbound dialing
- Custom application logic
Key Validation Points
Key validation points to look for during the process include:
- Peak volume of calls into IVR
- Speech recognition accuracy and responsiveness
- Speed of database lookups
- Greeting and prompt timing
- Outbound dialing verification
IVR/Voice Portal Testing Use Case
Here’s an example of where IVR/voice portal testing proved quite effective. An airline found that callers were complaining about slow response time in the flight status voice self-service application. In the manual tests that were done by the airline, the response times seemed very quick. The customer decided they needed to execute a performance test to better understand how the application performed at different call volumes.
With the help of Empirix, the organization determined that when they had 200 or less calls in the system performance was very good: 0.5 seconds. However, when the concurrent call load was brought up to 350, the response time increased to almost 7 seconds. And the customer’s IVR was meant to support 700 concurrent calls!
While running the test, the customer was able to monitor its systems and determine that cause of the performance degradation was a poorly designed database query.
How do you test deployments before going live? Let me know in the comments below.