This article is a guest post submitted by Zephyr to Checkpoint Technologies. Zephyr is a Checkpoint Technologies partner offering real-time solutions designed to transform how development and QA teams work and collaborate, helping them release higher quality software on time. In this blog, we take a look at the ever-evolving software testing landscape, and how to merge Dev, Ops and QA into one entity
Cultures surrounding software development professionals and their teams have drastically changed over the years to form more of an oiled machine rather than siloed cogs. In particular, DevOps has become a major influence for agile testing methodologies and overall operations. As its name shows, DevOps is an effort to help development, operations and quality assurance staff work together more effectively in order to produce the best programs possible. It's clear that this is a significant transition from the lax communication in traditional processes. DevOps is forming a new foundation for QA and it's important for teams to understand what this entails.
Is QA dead?
There are a few industry experts that are claiming that DevOps will effectively be the end of QA, but will it really eliminate the need for experts to thoroughly check and test applications? DevOps.com contributor Asaf Yigal thought so, noting that because the responsibility for quality is now distributed across the team, QA professionals are no longer needed. While it's true that there's more overall accountability for the software quality, that doesn't mean that QA experts are suddenly less valuable. QA works with the development side to transition tests into the continuous everything environment, and QA also teams up with operations to collaborate in monitoring tools or run smoke tests. So although QA teams may not exist in exactly the same form, there is still a major need for capable testers within agile software projects and DevOps environments.
How DevOps is shaping QA
It's clear that QA has changed, so much so that some professionals may not recognize it compared to legacy testing processes. DevOps is actively shaping the relationships and requirements that QA must meet alongside its new development and operations collaborators. DevOps.com contributor David Geer noted that QA teams now have expectations including ownership of quality tracking and improvement throughout the project lifecycle, preventing defects early on, automating everything they can, identifying process issues and becoming quality advocates. These responsibilities, among many others, are critical for QA professionals as they strive to be an active part in DevOps environments and share knowledge with their partners.
No longer just about finding bugs
Even in the days of waterfall testing, QA was mainly geared to find bugs and report them to developers in order to patch the vulnerabilities and achieve full functionality. Under DevOps and agile, however, things have taken a big turn toward actually preventing defects from occurring in the first place. Neotys contributor Tim Hinds noted that QA is in a crucial position to push code back when there's an issue, or to send it out when everything is working appropriately. Because testing teams have tracking tools that monitor testing metrics, QA can easily determine where problems are in their products and processes. This information will help strategize what areas need to be changed and what adjustments to make.
"DevOps isn't an individual, it's a core value of a development organization," Hinds wrote. "DevOps is more about trust, people, and teamwork than it is about process. It's about the creating of software as an ongoing service, not a static product. Although it's not in the name (DevQuops, anyone?), the only reason that DevOps works is because quality is built into the entire system. You can't get much more important than that." DevOps isn't something that just happens overnight. It requires a major shift change, and puts new responsibilities on QA professionals. However, with DevOps bringing everyone together, users will likely see better quality applications and teams will see more streamlined operations.
In a DevOps environment, QA professionals have new responsibilities.