From the Blogosphere
DevOps and Test Automation | @DevOpsSummit #DevOps #Microservices
Some of the common hurdles testers face when trying to automate the testing life cycle, and ways around them
By: Sanjay Zalavadia
Feb. 3, 2016 02:00 PM
Test automation is arguably the most important innovation to the process of QA testing in software development. The ability to automate regression testing and other repetitive test cases can significantly reduce the overall production time for even the most complex solutions. As software continues to be developed for new platforms - including mobile devices and the diverse array of endpoints that will be created during the rise of the Internet of Things - automation integration will have a huge hand to play delivering reliable, multifunctional products that end users want and need.
Of course, test automation is not without its challenges. Let's take a look at some of the common hurdles testers face when trying to automate the testing life cycle, and ways around them.
In truth, interoperability issues are not inevitable. There are a variety test management tools on the market that provide seamless integration with the most commonly used software development tools - for example, JIRA test management tools. As more development teams transition to DevOps, many will also shift from traditional SDKs to agile software development tools such as JIRA. The best way to accommodate fluid collaboration between DevOps teams and testers is to seek out an automation testing tool that is truly integrated with the best software development technology on the market. This will preemptively solve any problems that may arise as a result of interoperability, while enabling agile testing methodologies.
A blank drawing board is never a good thing when it comes to test management strategies.
Strategy and organization
One way to abate these issues is to focus on what the solution truly needs, rather than be overly rigid in terms of traditional methodology. Test managers must use all the tools available to them, and not necessarily rely too heavily on one method of testing. For example, simple black-and-white tests should always be automated. Exploratory tests, on the other hand, should be manual, as they require a level of creativity and human foresight that a machine simply cannot supply - at least not yet. As for regression testing, it's always a good idea to ensure that any automated tests that directly impact the user experience are very carefully integrated. Simpler unit tests that focus more on whether or not the solution is executing properly can typically be automated from the get-go. But regression tests that ensure deep functionality for the user experience - typically through the use of key test metrics - should be manually stepped through.
Some degree of manual testing will almost always be needed to complement automation integration when it comes to creating a rich user experience. Machines are smart, but they're not necessarily apt at determining what is intuitive. This requires a more human touch.
Similarly, according to TechTarget contributor Gerie Owen, manual testing is heavily relied upon in the making of very young software that is still trying to pin down its value proposition. This can lead to instability between phases of development, demanding a level of variation in test cases and test metrics that automation integration cannot provide.
Challenges to test automation will always arise. But as long development and QA teams are flexible - one might say agile - throughout the testing life cycle, they will be able to get the most out of automation integration time and again.
Reader Feedback: Page 1 of 1
Latest Cloud Developer Stories
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
SYS-CON Featured Whitepapers
Most Read This Week