Get Automated Testing “Done”

How to fit automated testing into scrum, and keep testers in sync with other teams

One of the benefits of the approaches of agile projects is their friendliness towards testing. The testing activities, and the testers with it, are integrated into the teams, and testing and quality are redefined as team responsibilities. Automation nowadays is a must-have that needs to be addressed. Automation happens on multiple levels in a system, starting with unit tests. Here, we’ll focus on functional tests at the UI level.

For functional tests timely automation can be difficult, due to UI dependency. A team might be “done” with work items in a sprint, but the development and automation of functional tests might not have been finished yet. Having to do such automation later is unattractive; it places the testing and automation out of sync with the other activities in the team, making it harder to cooperate.

A first step to make testing manageable in short sprints is to use a domain language approach. This can help the whole team express and communicate tests quickly. We use keyword based “actions” that are easy to manage, use and implement, and is supported well with our product TestArchitect™. We also have a tool to translate actions to and from Behavior Driven Development (BDD) scenarios, another domain language approach.

Actions become the basis of the modular test design method called Action Based Testing (ABT), which organizes the tests into “test modules”. A main distinction is made in ABT between modules for “business tests” and for “interaction tests”. In a business test one would use business level actions like “rent car” or “check balance”, while in an interaction test the actions would be at a lower level, like “select menu item” or “check window exists”.

To get to automated testing “done” in agile sprints we ended up with a process that is shown in the picture. When the sprint starts the testers create the higher business level tests. These tests stay at the same level as the user stories and acceptance criteria. Further into the sprint, interaction tests are developed, when the user interfaces have become stable enough to make it worthwhile.

Also very early in the sprint interface mappings are made. We recommend that those are created without the use of an interface viewer or other spy tool. This encourages the team to define easy to maintain identifying properties for upcoming UI elements, like the “name” property in Java. This also encourages better collaboration between QA and Dev teams.

When the UI becomes available, the team is ready with:

  • Test Modules

⇒ Business Level Tests

⇒ Interaction Tests

  • Interface mappings
  • Actions – At this point actions are well thought out and finalized but not yet automated

LGMweb.201512.hans.01The automation focuses on the actions and only happens when the UIs become fairly final. (If you follow the approach, last-minute changes will be accommodated easily).

An additional way to relieve teams and keep automated testing in sync with development is something we like to call “Outsourcing 2.0”, which is part of our services offering as a company. Under this model, excess workload for test development and automation is handed over to a service group that can grow and shrink over time, and can service multiple agile teams. This way the attention of all team members can be focused on new functionalities.

Hans Buwalda
Hans Buwalda, CTO of LogiGear, is a pioneer of the Action Based and Soap Opera methodologies of testing and automation, and lead developer of TestArchitect, LogiGear’s keyword-based toolset for software test design, automation and management. He is co-author of Integrated Test Design and Automation, and a frequent speaker at test conferences.
Subu Baskaran
Subu Baskaran has over 11 years of experience in leading large, complex outsourcing projects both from onsite and offshore. He has a Bachelor’s degree in electronics and instrumentation engineering from Sastra University, India and an MBA from Cass Business School, London.

The Related Post

Video narrated by MICHAEL HACKETT – Certified ScrumMaster This is Part Two Continued of a Four Part Video on “New Roles for Traditional Testers in Agile Development” Michael shares his thoughts on “A Primer – New Roles for Traditional Testers in Agile” LogiGear Corporation LogiGear Corporation LogiGear Corporation provides global solutions for software testing, and ...
LogiGear Magazine July 2012 Testing in Agile  
SKILLS Agile teams need training! One of the missing links in the implementation of Agile development methods is the lack of training for teams. I noticed in our recent survey on Agile that only 47% of the respondents answered “Yes” that they had been trained in the Agile development process, with over half responding “No.” ...
Distinguishing these terms from each other can be rather confusing. In an attempt to go back to the basics, Nadine Schaeffer explains in detail the benefits and the necessity of using realistic situations.
As CTO of Xebia and highly experienced in offshore testing in India, Guido articulates his methods in addressing common challenges faced by the in-house and offshore teams. He weighs heavily on strategic tactics as well as key cultural aspects to execute efficient and effective Agile methods. 1. I work at a US-based company and we ...
Agile is a philosophy focused on delivering constant value to customers incrementally and frequently, based on communication and feedback. These two ingredients are vital to a successful Agile recipe. Agile is no longer a buzzword or an unknown territory in the industry. Agile has progressed leaps and bounds the last few years and has matured to ...
To begin this article, it would be a good idea to, remember this key point: Agile Manifesto Value #1 Individuals and interactions over processes and tools Tools work at the service of people. People, particularly intelligent people, can never be slaves to tools. People talking to each other, working together and solving problems is much ...
Continuous Improvement and Short Feedback loops (think: Test Driven Development; Sprint Demo/Review; …) are at the core of any Agile process. Without a structured improvement process it can be difficult for teams to improve and without improvement we stagnate. For methods like Scrum, XP and et al., Retrospectives are that tool.
Agile is here to stay. Once the radical alternative to Waterfall development methods, these legacy methodologies are being disrupted and replaced by Agile practices that improve time-to-market, reduce development costs, and produce higher quality software that better meets customer expectations. As the world demands more software, development teams – from scrappy startups to big corporations ...
If your Agile implementation is not about people, you’ve missed the boat! The most profound impact to becoming more Agile is happier teams! Agile manifesto Value #1: * Individuals and interactions over processes and tools Words like these do not show up in Waterfall or RUP SDLC process descriptions. Agile cannot get more basic than ...
Mark Levison has over twenty years experience in the IT industry, working as a developer, manager, technical lead, architect, and consultant. He discovered Agile in 2001 and is now a Certified Scrum Trainer and Agile Coach with Agile Pain Relief Consulting. Levison has introduced Scrum, Lean and other Agile methods to a number of organizations and coaches from ...
One of the challenges with building an application these days is the number of dependencies that application will actually have on other applications. Ideally in order to know how that application will actually perform, application developers would be able to test their application against the application it depends on running in production. The odds of ...

Leave a Reply

Your email address will not be published.

Stay in the loop with the lastest
software testing news

Subscribe