Welcome!

@DevOpsSummit Authors: Liz McMillan, Pat Romanski, Elizabeth White, Yeshim Deniz, Zakia Bouachraoui

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
With more than 30 Kubernetes solutions in the marketplace, it's tempting to think Kubernetes and the vendor ecosystem has solved the problem of operationalizing containers at scale or of automatically managing the elasticity of the underlying infrastructure that these solutions need to be truly scalable. Far from it. There are at least six major pain points that companies experience when they try to deploy and run Kubernetes in their complex environments. In this presentation, the speaker will detail these pain points and explain how cloud can address them.
Discussions of cloud computing have evolved in recent years from a focus on specific types of cloud, to a world of hybrid cloud, and to a world dominated by the APIs that make today's multi-cloud environments and hybrid clouds possible. In this Power Panel at 17th Cloud Expo, moderated by Conference Chair Roger Strukhoff, panelists addressed the importance of customers being able to use the specific technologies they need, through environments and ecosystems that expose their APIs to make true change and transformation possible.
In an era of historic innovation fueled by unprecedented access to data and technology, the low cost and risk of entering new markets has leveled the playing field for business. Today, any ambitious innovator can easily introduce a new application or product that can reinvent business models and transform the client experience. In their Day 2 Keynote at 19th Cloud Expo, Mercer Rowe, IBM Vice President of Strategic Alliances, and Raejeanne Skillern, Intel Vice President of Data Center Group and GM, discussed how clients in this new era of innovation can apply data, technology, plus human ingenuity to springboard to advance new business value and opportunities.
DXWorldEXPO LLC announced today that "IoT Now" was named media sponsor of CloudEXPO | DXWorldEXPO 2018 New York, which will take place on November 11-13, 2018 in New York City, NY. IoT Now explores the evolving opportunities and challenges facing CSPs, and it passes on some lessons learned from those who have taken the first steps in next-gen IoT services.
The current age of digital transformation means that IT organizations must adapt their toolset to cover all digital experiences, beyond just the end users’. Today’s businesses can no longer focus solely on the digital interactions they manage with employees or customers; they must now contend with non-traditional factors. Whether it's the power of brand to make or break a company, the need to monitor across all locations 24/7, or the ability to proactively resolve issues, companies must adapt to the new world.