Customer-focused Test Automation in Agile Environments

Companies migrating to an Agile development methodology have seen the benefits of accelerating deployments with smaller, more focused feature sets per release, but they have also experienced the pain of grouping those feature sets into workable code capable of being released to the public—without sacrificing quality. It is an Agile team’s responsibility to deliver working “tested” features, but there is a big difference between a working feature and a feature that can interoperate and scale in a real-world environment. Many organizations are trying to “shift left” by having developers take more control over the QA process so that features have already undergone a level of testing when they are released. As we’ve seen other organizations that have shifted left, developers lose focus on development of the end product and begin to write automation tools to make their lives easier; this results in smaller unit test automation libraries that were built by developers—but not for the objective end-users.

Effective customer experience test automation requires test cases that are driven from the same interface that customers will actually use and requires both rigid performance measurements and intelligent user-like actions for grey area and boundary tests. In an agile framework, quite often the challenge is that the QA team receives the requirements late in the process, if at all, requirements are not updated at the pace of development, and, sometimes, the QA team does not have access to the application until the development team “releases” it.

Empirix excels at creating design tools that help IVR developers automatically document, design and automate test cases straight from the IVR development tool or even from a picture or diagram of the IVR call flow design. This method ensures 100% application coverage with comprehensive mapping of existing services and call flows as well as predictable and repeatable test scripts that can traverse and verify contact center functions. Because this method goes beyond simple unit testing, it has been proven to find system integration and scalability interoperability problems. When you have a tool that can be data-driven at every level, your teams can take a call flow and drive hundreds of customer behaviors through the application under test and really expose experience issues before they end up in a production environment.

Diagram
The ability to map a customer journey through a contact center, and then attach a behavior library to that journey and retrieve thousands of points of data—before exposing real customers to it—helps accelerate deployment efforts and mitigates the risks that most organizations worry about when it comes to the rapid release schedule that Agile offers. Driving test cases direct from the application design and building out data-driven behavior libraries are fundamental when developing a customer-focused QA process in an Agile environment.

Written by Erik Delorey – Erik on LinkedIn | Posts by Erik

Erik is Empirix’s Test automation expert, with over 15 years in the telecommunications data networking and call center industry, Erik has architected, coded, executed, and managed some of the world’s largest and most complex stress tests for the top global service providers and enterprises. His experience includes the synchronization of web, voice, email, and screen pop testing enabling customers to test real world conditions before they launch new platforms.