@DevOpsSummit Authors: Pat Romanski, Liz McMillan, Stackify Blog, Elizabeth White, Yeshim Deniz

Related Topics: @DevOpsSummit, Microservices Expo, Linux Containers, Containers Expo Blog

@DevOpsSummit: Article

Agile Testing Automation | @DevOpsSummit #DevOps #APM #Microservices

Agile test management has been evolving to be more accommodating to agile processes

Four Ways to Improve Your Agile Testing Automation Processes

Agile software development is slowly but surely becoming the norm for a significant contingency of software developers. What used to be rigid, step-by-step processes that were siloed between specific teams have transformed into a collaborative, adaptive methodology that ultimately leads to the creation of superior solutions.

As an integral component of software development, agile test management has also been evolving to be more accommodating to agile processes. Testing automation in particular is still coming into its role as an agile tool and, for some teams, this may create unique challenges. Still, by taking the following into consideration, testing teams can reap all the benefits of testing automation in an agile environment.

1. Strong communication
Contrary to the notion of an open workspace in which different teams freely walk up to one another with observations and questions, many testing teams still work in different offices, sometimes even in different parts of the world. According to TechTarget contributor Francis Miers, nearly 60 percent  of all agile testing teams are scattered across the map. On the surface, this may seem contradictory. However, the problem with traditional testing methodologies was not that people weren't working in the same room, but that they weren't communicating effectively. As a result, teams were relatively blind to what happened to a product before and after it ended up on their rotation.

For the most part, telecommunications and cloud sharing capabilities have made it possible for even disparate testers to stay in touch with each other and with other teams. This communication is essential for fostering agile testing methodologies and must not be shirked. As the experts, test managers can certainly take a leading role in testing automation, but only by collaborating with developers can they have a solid understanding of how to plan for regression tests, and where testing automation needs to occur. The key here is to create a transparent, collaborative testing life cycle.

2. Select the right tools for the job
Trying to use waterfall testing tools for an agile project is like trying to fit a square peg in a round hole: Even if you somehow manage to do it, corners will have to be cut, and the end result won't be ideal. It is for this reason that TechTarget contributor Nari Kannan recommended leveraging testing tools that can accommodate the speed of agile. This includes the ability for scripts to be written and revised swiftly in order to support each new iteration of the project. Kannan also pointed out that agile testing methodologies should be imbued with the ability to test for scenarios rather than standard, black and white inputs.

"Support for automated testing scenarios may be much more useful when using Agile development methodologies rather than support for specified inputs and expected outputs as in traditional automated testing tools," Kannan wrote. "Many more automated tests for scenarios become reusable between iterations, so re-scripting between iterations becomes easier."

3. Automate generously, but intelligently
Everything that can be automated should be automated - assuming it makes sense to automate it. The majority of regression tests, for instance, are inherently redundant. They ensure that an alteration or add-on will play nice with everything that came before it, and this allows for innovation on the fly. Automation integration saves time here by eliminating the need to manually go back through the steps every time changes are applied. In addition to guaranteeing that regression tests actually happen, the risk of human error is significantly reduced.

That said, deciding what tests to automate and how exactly to automate them must be a very hands-on process. These tests don't necessarily have to run manually on the first go-around, but they should be intelligently integrated, which consists of deciding how they should interact with the scripts before they are set in motion. In theory, it's wise to seize every opportunity for test automation. In practice, it's even wiser to make sure that automated tests are thoughtfully deployed and that they rely on test metrics that actually matter.

4. Manual testing isn't going anywhere
Going off number three, it won't always make sense to automate every test case. Even with exploratory testing that can help testers probe for possible outcomes of specific scenarios, there will be situations in which unforeseen manual testing will be the only sure-fire way to thoroughly vet certain software features. This is especially true when it comes to optimizing the user experience. Even with adaptive design and smarter navigation, the ever-increasing number of platforms, particularly in the form of mobile devices, may result in clunky UX that an automated test cannot readily detect.

The good news here is that if the need for a certain manual test seems to arise more frequently, it can subsequently be automated. Manual testing is great for unique or anomalous user scenarios. But once the need for this test becomes recurring, it may make more sense to automate it, and therein lies the beauty of agile testing methodologies. They're as flexible as you need them to be.

More Stories By Sanjay Zalavadia

As the VP of Client Service for Zephyr, Sanjay Zalavadia brings over 15 years of leadership experience in IT and Technical Support Services. Throughout his career, Sanjay has successfully established and grown premier IT and Support Services teams across multiple geographies for both large and small companies.

Most recently, he was Associate Vice President at Patni Computers (NYSE: PTI) responsible for the Telecoms IT Managed Services Practice where he established IT Operations teams supporting Virgin Mobile, ESPN Mobile, Disney Mobile and Carphone Warehouse. Prior to this Sanjay was responsible for Global Technical Support at Bay Networks, a leading routing and switching vendor, which was acquired by Nortel. He has also held management positions in Support Service organizations at start-up Silicon Valley Networks, a vendor of Test Management software, and SynOptics.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

@DevOpsSummit Stories
As DevOps methodologies expand their reach across the enterprise, organizations face the daunting challenge of adapting related cloud strategies to ensure optimal alignment, from managing complexity to ensuring proper governance. How can culture, automation, legacy apps and even budget be reexamined to enable this ongoing shift within the modern software factory? In her Day 2 Keynote at @DevOpsSummit at 21st Cloud Expo, Aruna Ravichandran, VP, DevOps Solutions Marketing, CA Technologies, was joined by a panel of industry experts and real-world practitioners who shared their insight into an emerging set of best practices that lie at the heart of today's digital transformation.
Daniel Jones is CTO of EngineerBetter, helping enterprises deliver value faster. Previously he was an IT consultant, indie video games developer, head of web development in the finance sector, and an award-winning martial artist. Continuous Delivery makes it possible to exploit findings of cognitive psychology and neuroscience to increase the productivity and happiness of our teams.
How is DevOps going within your organization? If you need some help measuring just how well it is going, we have prepared a list of some key DevOps metrics to track. These metrics can help you understand how your team is doing over time. The word DevOps means different things to different people. Some say it a culture and every vendor in the industry claims that their tools help with DevOps. Depending on how you define DevOps, some of these metrics may matter more or less to you and your team.
DevOpsSummit New York 2018, colocated with CloudEXPO | DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City. Digital Transformation (DX) is a major focus with the introduction of DXWorldEXPO within the program. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term. A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throughout enterprises of all sizes.
Dion Hinchcliffe is an internationally recognized digital expert, bestselling book author, frequent keynote speaker, analyst, futurist, and transformation expert based in Washington, DC. He is currently Chief Strategy Officer at the industry-leading digital strategy and online community solutions firm, 7Summits.