While this talks largely about, the integration between dev and ops teams, quality is also a significant piece. Continuous Testing has been actively promoted, with teams trying varied approaches to bring in a shift left focus in engineering.
Why is there such an important need to integrate quality engineering into the DevOps cycle?
Undoubtedly quality is an important element in the development life cycle and increasingly product and business teams have understood the importance of releasing after an informed analysis and decision on the overall quality of the product.
Read Also: Software testing trends 2019
Gone are the days when the dev to test ratio had numbers hovering around a 3:1 or even a 5:1. Increasingly, we are seeing projects, where the ratio is upwards of 7:1, where one tester is able to handle the quality of the output coming in from a sizeable dev team.
How is this possible?
This is clearly the outcome of quality moving left and integrating itself in the DevOps cycle. Tests are proactively planned in advance, automated leveraging a robust framework and thanks to tools such as Jenkins, the test automation suite is now integrate-able into the overall CI/CD pipeline.
What this means is that, when check-ins are made, certain tests catch issues at the unit level, when a build is generated, a suite is able to confirm the readiness of the build to test, enabling testers to take on other tasks of priority until a certified build is ready.
This also has a huge advantage of enabling developers partake in quality, and being able to first hand see the quality of the work they engineer.
Teams are lately having developers also write API automation, once a solid framework has been put together by the quality engineering team, typically by an architect level person.
This increases the overall team’s velocity, makes it possible to deliver quality with such a tight dev:test ratio, enables in-Sprint automation, creates a tight collaboration amongst the team, and promotes overall ownership for quality.
So, the benefits of quality engineering efforts that is tightly integrated into the development cycle and taken up from the early stages, are plenty – it is a matter of getting to implement it upfront, setting aside the investment for the same, and making the entire team buy into the model, top-down.
At sponsor levels, the management needs to understand the ecosystem and how this is the way forward to deliver the right quality in tight Agile cycles.
At an engineering team level, especially amongst the developers and testers, the right messaging is important to ensure there is no insecurity/sense of being threatened on one’s role.
At the same time, developers should understand the value of this task, and as to why they need to take this on, as some may perceive this as a responsibility of the quality team.
The QE team should continue to play the enabler role, maintaining the framework as the product evolves, look for upgrades based on latest toolsets and technologies, support the entire team in the automation journey, maintain the automation suite, help the team understand the quality and health of the product based on the outcomes of the automation suite and support making the right release decisions.
Integrating QE into the DevOps cycle is becoming inevitable. When the team embraces it understanding the full potential this exercise holds, the journey is even more rewarding at process, people and engineering output levels and to enable this a thought-through, quality engineering strategy is key.
QA InfoTech’s Quality Engineering services cover the Test Advisory & Consulting services & Software Testing Life Cycle. Connect with our team of experts and take advantage of our QE expertise.