From the traditional Waterfall model to more iterative approaches like Agile and DevOps, software testing is constantly evolving. And while teams have worked their way to deliver quality at speed, there seems to be something holding them back. Read on to learn about in-sprint automation and why it’s the key to moving at DevOps speed.
N-1 sprint is a common approach in which testing activities start at least one sprint behind the development process, and new functionalities are tested only when they become relatively stable.
For many automation testing frameworks like Selenium WebDriver, creating and executing tests takes a considerable amount of time. Therefore, testing new functionality after some degree of product readiness is reasonable.
But N-1 sprints also bring about the time lag between testing and developing. That is, QAs often have to wait for one (or even two months) before actually exploring new functionality. And when they have something to play with, they struggle to keep up with the development pace.
If we think of it that way, N-1 sprints are more or less the replica of the traditional Waterfall model.
To break free from the siloed approach of N-1 sprint automation and bring team collaboration to a new level, meet in-sprint automation.
Instead of designating Devs and QAs into different sprints, in-sprint automation needles the core functions and engages the entire testing process (creation, implementation, execution, and reporting) all together in one sprint.
This one-sprint window brings forth:
If moving towards Agile and DevOps culture is your goal, shifting from N-1 sprint to in-sprint automation is one first step to get there.
However, on the path to in-sprint automation, your team might encounter some roadblocks, one of which is handling last-minute changes in test requirements.
In Agile teams, testers can use Acceptance Criteria as test requirements. Acceptance Criteria are part of a user story—a brief explanation of the customer-relevant functionality. However, the initial understanding of users and software in development might be incomplete. That’s why when teams learn something new about their users, product owners, developers, and other members get together to discuss and “upgrade” the existing user stories.
Those upgrades might lead to test requirements being changed at the very last minute. And testers are left with two options: modifying test cases or starting from scratch.
As discussed earlier, creating and running test cases for many testing frameworks is not an express delivery service, and the whole process might take as long as one to two weeks. And it’s not entirely due to the lack of technical expertise, either. Programming background and experience might play a role in modifying test cases within time constraints. But that tactic won’t compensate for the bulky test creation and execution process in any given tool or framework.
So suppose teams use frameworks like Selenium WebDriver anyway. Chances are, they will eventually have to discard the entire testing progress of user stories and carry them over to the next sprint. What happens next? Their confidence wanes out over time; testing falls far behind the development pace; they have to circle back to N-1 sprints eventually.
Admittedly, in sprint automation is not a one-size-fits-all solution, especially for teams with bulky and inflexible frameworks.
To avoid those roadblocks to in-sprint automation, besides team skills and collaboration, finding a suitable automation solution should be your next action item.
As a robust automated testing solution, Katalon Recorder provides a fast and lightweight option to achieve in-sprint automation:
To achieve in sprint automation, we have to take into consideration many factors, and picking a suitable test automation framework is among the most critical ones. In sprint automation might not be an easy call, but the benefits will be well worth the hardships.