It’s all about the user.
End-to-end testing answers a lot of critical questions about what you’re releasing into the wild. Does the flow of the application perform as it was designed? Does the application communicate correctly with the database, network, hardware, and other applications, from the front end to the back end? Do the integrated components function like they’re supposed to? And, the money question: Does the app perform reliably to create the UX that our customers want?
For the most part, testers like end-to-end testing because it tests from the user perspective and identifies defects to spark continuous improvement. But some QA teams aren’t always so keen on end-to-end testing because it’s time- and resource-intensive—and time is short when trying to keep up with the rapid pace of DevOps. In some cases, organizations simply don’t have enough experienced, available resources to create and maintain quality, automated tests—and don’t have the time or money to invest in a full-scale training program.
With end-to-end testing, organizations often look at complex applications in complex environments—including mobile, cloud, IoT, or customer components—and default to manual testing because they think automation is impossible.
Good news: It’s not.