Vladislav Kochelaevs - Fotolia
Continuous software improvement is a huge part of DevOps. However, DevOps and testing are vastly different from the "traditional" arrangement where a separate QA team carries out its tests in a designated timeframe. The focus on automation and integration means an end to the the old way of doing things. But that doesn't necessarily mean that QA professionals are out of a job.
Not unlike what the organization at large is doing in its transition to DevOps, testing professionals have to adapt to this new paradigm. With devs becoming more responsible for testing, and testing moving toward automation, somebody needs to design the tests to facilitate continuous delivery. And that's where QA professionals can take their testing expertise and use it to help developers.
"When people get automated, entire automation cannot be done by dev guys," Nikhil Kaul, Senior Product Marketing Manager at SmartBear said. "And let’s say the best case scenario is [one] where 90% of test cases are automated, QA testers who are currently testing manual applications need to be a part of that cycle. Otherwise you cannot reach those automation limits you want to go towards."
QA professionals now have scriptless programs with which they can automate tests within the continuous development lifecycle without taking the time and resource to learn code on the fly. The availability and efficiency of automated testing also allows QA professionals to evaluate production code with a wider lens and run deeper, more exploratory tests. But it doesn’t end there.
Kaul added that in order to find a successful marriage between manual and automated tests, QA professional must first get comfortable with scriptless test creation. Once QA has cleared that hurdle, they’ll eventually need to learn scripting languages. And finally, QA professionals must become versed in Integrated Development Environments (IDE) like Eclipse that can truly work in tandem with both devs and automated tests.
So when it comes to DevOps and testing, there’s a role for QA in both the continuous delivery process with the rest of the team and in working with developers to design better tests. Keeping professional testers involved – early on and in as much of the delivery process as possible – ensures that code is being tested well, which in turn means that the software is being delivered on time and in working order.
Although software testers need to realize that their responsibilities no longer lie in providing testing as an external, siloed service, companies also need to realize that testers are still a valuable commodity. As responsibilities merge and lines blur in the DevOps environment, it’s important to realize that developers ultimately develop, and testers ultimately test. And those are entirely different, yet valuable skillsets.