How Testing Fits into the DevOps Toolchain
Many companies have turned to Agile software development in pursuit of faster releases. Yet even as they’ve automated release management, delivery, and deployment, writes Diego Lo Giudice for Forrester Research, some companies ignore the importance of automated testing as part of the DevOps toolchain.
Testing is a critical part of the handoff between development and IT operations. Successful Agile teams using DevOps practices fully integrate testing into their software development lifecycle.
A test-driven development system creates confidence that when all of the automated tests pass, the code is good to go. Successful DevOps toolchains include a fully automated test harness that can signal to both development and IT operations teams when code that’s in development and code on running systems is passing (or failing) their tests.
To improve testing inside your Agile environment, Lo Giudice recommends you bring in talented testers, then deploy them wisely. Make sure they test API services for business logic and processes to maximize the benefits of automation. Lo Guidice warns against wasting the time of smart test specialists on over-automating testing for parts of the system that are changing quickly, or that are ambiguously specified.
Despite that caution, it’s clear that high-functioning IT environments continuously test deployments for performance, reliability, and correctness. If you make automated testing an integral part of your DevOps toolchain, the code you deliver so quickly will be of much higher quality, and your complex application much more likely to work as designed.
- Read all about the state of DevOps today in the 2015 report, and learn how DevOps can boost overall organizational performance, and how it depends strongly on IT leadership for success.
- Build a Toolbox for Continuous Delivery - What you need to practice continuous delivery, including tools to speed and improve testing.
- 25% Tech, 75% Culture: Build a Window in the Wall - How one company's dev and ops teams communicated around a common toolchain and built greater trust - and better business results.
- Continuous Integration Success Depends on Automation - How continuous testing works.