Testing in DevOps
It is very important that the DevOps team can access and understand the quality and the risks with respect to how the teams delivers the code for operational use.
When you talk of Quality, you cannot run away from how to verify the same. The way we verify the same typically impacts the way we deliver and the time needed for the delivery.
In addition to how development team assures the code quality using tools, the operations team using tools to sniff out operational issues, we require testing that can quickly provide results so that the whole process is not impacted. This brings to a scenario of how do we efficiently and effectively test within a short period? The obvious answer is usage of tools, which brings us to the topic of automation testing!
Having automation testing embedded in the DevOps is the best way to get the synergies of all teams together be it development, testing and operations. Teams usually embrace a development methodology like Test Driven Development, Behaviour driven Development etc. to ensure development and testing happens together and seamlessly. Usage of tools to create a framework that works for unit level, component level and UI level testing works wonders for the overall quicker delivery. Most of the real life projects also adapt a manual testing on top of the automated to ensure any delta areas missed out are taken up due to short sprint cycles.
Once you have a testing framework entrenched in the DevOps model, it provide the whole team a platform for quicker delivery with respect to how testing related to development and verification for Operations are carried out. If we miss out on the automation for DevOps we will see a huge effort implication as taking a manual route (limited tools and manual testing) turns out to be very costly in achieving the DevOps model.