Houston, we have a problem.
For most enterprises, scaling Agile and adopting DevOps means investing a significant amount of resources in Development and Operations, all without leaving testing in the dust.
The fact is that manual testing is no longer enough. Using manual testing to keep up with the digital age is like racing in the Formula 1 with a horse and buggy. Large teams of manual testers are ubiquitous in companies that see testing as an “afterthought”. This inevitably hinders the ability to scale up testing, eventually creating drag on the whole product cycle.
Thankfully enterprises have increasingly begun to recognize testing as a bottleneck, and are seeking more advanced methods of testing – including test automation. In the recent research Accelerate Development With Automated Testing, Gartner advocates, “Application leaders who are modernizing software development need to look at software testing as more than just a way to reduce bugs in an application and mitigate associated risks.” Yet, for success, teams must overcome the following challenges:
- Testing after “code complete” leaves little time to stabilize the code.
- Manual testing is too slow and costly to do early and often.
- Automated user-interface-driven tests are too slow and fragile to efficiently provide good test coverage.
- Manual integration is too slow and inefficient for continuous testing.
As Wolfgang Platz, Founder and CPO of Tricentis, mentions however, test automation often fails to deliver the expected results. This is due to factors like:
- High maintenance: Traditional script-based automated tests need frequent updating to keep pace with highly-dynamic, accelerated release processes. This results in an overwhelming amount of false positives that require burdensome maintenance and/or cause automation efforts to be abandoned.
- Slow execution time: Traditional tests are time-consuming to execute, so it is not practical to run a meaningful regression test suite on each build. This means the team lacks instant feedback on whether their changes impact the existing user experience – undermining the goals of CI.
- Frequent failure: With today’s complex, interconnected applications, test environment inconsistencies commonly impede test automation efforts and result in false positives. Again, this requires burdensome follow-up and/or causes automation efforts to be abandoned.
So, what does this mean for enterprises looking to scale Agile and adopt DevOps? Here at Tricentis, we strongly believe that the answer is Continuous Testing — providing real-time insight into risk with business-focused, actionable results. According to Wolfgang Platz:
“Continuous Testing evolves and extends test automation to address the increased complexity and pace of modern application development and delivery. Tricentis’ approach to Continuous Testing includes risk-based testing, model-based test automation, service virtualization, and the automation of other strategic test enablement practices such as test data management.”
You can read more insights from both Wolfang Platz and Gartner’s research in “Test Automation is Required for Agile and DevOps Success”.
Gartner, Accelerate Development With Automated Testing, Joachim Herschmann, 16 March 2017