| | June 20158CIOReviewopinionin myTo Automate or Not To Automate?By Ruslan Desyatnikov, CEO, QA MentorIt's not possible to work in software quality assurance and not have heard about automation. Some people swear by it and recommend automating everything possible; others feel that leaving the human, manual element is more effective, even if it is less efficient.Automation vendors are going to sing the praises of automation, for certain, but just how can automation help you, if at all? Should you automate it or not? Is it worth the time, money, and effort to find, buy, utilize, and maintain automation tools?Unfortunately, the answer isn't simple. There are many ways that automation can help, and ways that it cannot. Some projects will do better with automation, and for others it could be a waste of time. Some types of testing must be automated, while for others it's far more difficult. How do you know if it's right for your project or organization?Determining if Automation Can Benefit youBefore deciding to automate, you should look at your current project status to determine if automation could help you at this point. Consider the following questions:· Do you have a lot of frequent regression cycles to run?· Do you have a stable GUI but frequent code changes?· Are you using a waterfall approach where changes are delivered all at once?If the answer to any of those questions is yes, then automation should be strongly considered. You possibly have both the need and a good foundation for automation. Regression tests are the most ideal candidates for automation since they are generally stable tests and re-run frequently. If your regression test cycle consumes more time than you think it should and it's being performed frequently, then automation may help reduce the testing cycles. Automation also works best for applications that have a fairly stable user interface. If your user interfaces changes frequently, then most of the automation tests will need to change frequently as well. This is why it's recommended that the GUI is stable before embarking on automation. If there are future plans to change the GUI, then it might be beneficial to hold off on the automation until that's complete.Determining if Your Team is ReadyYou may have a need for automation, but what about your team? A successful implementation requires a significant resources, time, and skills. · Do you have a solid, comprehensive, and easy-to-understand manual test repository?· Do you have the budget for a tool purchase?· Do you have staff with the skillset to utilize automation tools (free or otherwise)?· Do you have the budget for staff training or new hires?· Do you have the time to dedicate to getting automation off the ground?· Do you have the time to dedicate to automation test maintenance?Ruslan Desyatnikov
<
Page 7 |
Page 9 >