The solution is to explicitly allocate time to accomplish these as part of your release and sprint/iteration planning. Test automation will help quite a bit, so long as time is allocated for it in each sprint, and test automation goals are considered as vital as coding objectives. And if you’re trying to achieve Continuous Delivery, test automation is absolutely required.
Jonathan Bracken, vice president of marketing at Neotys: Communication with developers is essential. Testers need to know what changes to the application are coming down the pipe in order to be able to adjust test scripts and ensure a quality release at a fast pace. This, of course, is always easier when you’re using tools that automate some of the test design maintenance process.
Beyond communication and test design maintenance, automating non-functional testing steps (load and performance included) helps to ensure that every release not only functions, but performs well under load.
Kyle Cochran, vice president of product management at QASymphony: There are tools available that allow testers to exist in a more agile environment and still feel like they are releasing quality software, making their jobs more efficient and allowing them to evaluate more of the product without sacrificing that level of quality.
Agile in theory has everybody in one room or at a set of desks, and they are working through a number of stories and doing that in a face-to-face type of environment. But that’s the theory. I think the reality is that many software organizations are very distributed, and they have to find ways to communicate and operate efficiently with the pressures of developing software quality with high quality. And I think software organizations without the right tooling that allows good communication and good visualization of issues that exist or how well the product is performing are going to struggle. The proper tool makes it easier for both developers and testers to do their job.
Testing in an agile world
Trends like agile and tools that don’t require specialized skills have made it easier for developers to take on testing tasks, but that doesn’t mean testers lose their role or responsibility in this new world of development, according to Bracken. Developers have expanded their roles to take on testing, but their testing roles are limited to taking over test case designs and writing unit tests, he said.
“Even with this shift, the continued value testers can bring to modern organizations is in the analysis of test results,” said Bracken. “It’s easy to know what to do when the results are pass/fail, but with exploratory testing, stress testing, etc., deeper analysis can provide a lot more value when it comes to things like capacity planning and getting to the root cause of issues.”
Developers may be doing testing, but that doesn’t make them a tester. Testers bring with them a certain way of at looking at software that a developer may not be as suited for, according to Cochran.
Having developers take part in testing actually is an important part of making everyone on a team equal, according to Suplick.