Shift your Agile team into overdrive with test automation and collaborative analysis!
While the benefits of Agile through an implementation such as Scrum are well known, there are a number of supporting technical practices that can take a good Agile team and make them great - driving higher levels of performance, shortening time to market and decreasing risk.
Additional course details
The Agile Requirements and Automation course is an engaging one-day course full of practical techniques designed to get your teams collaboratively refining requirements and automating their tests.
In this course, we first look at how to refine Product Backlog Items effectively. We’ll take you through a technique known as Collaborative Analysis, which enables Scrum teams to collectively refine their requirements and establish what’s known as Concrete Examples. Concrete Examples are clear and specific scenarios that demonstrate how a product is intended to behave.
When a team has a very clear idea of how a product is to behave, it can start using techniques such as Test Automation effectively. In fact, through the use of certain tools, teams can turn the Concrete Examples (that can be understood by both technical, and non-technical people) into Automated Tests.
As an added benefit, because these Automated Tests are based on examples of how the system is supposed to work, they serve not only for quality assurance, but also automatically generate documentation. As your suite of Automated Tests grows, so does the documentation.
This course covers
- Behaviour Driven Development (BDD), Acceptance Test Driven Development (ATDD) and Specification by Example (SbE), and how these supporting approaches can enhance your Agile delivery.
- Cucumber (Java) and SpecFlow (Microsoft.net), the most popular tools to implement test automation with BDD, ATDD and SbE (above).
- Selenium - the most widely-used web-based application testing tool.
- Refining requirements collaboratively using practical techniques such as the Three Amigos, Diverge and Merge and Example Mapping.
- Concrete Examples and how to define them so they serve as the basis for automated tests and establish a common understanding across all members of the Scrum team.
- The Given-When-Then format (Gherkin language) and how it can be used to formalise Concrete Examples.
- Executable Specifications and how the Given-When-Then format can be turned into automated tests.
- Test automation best practices and supporting techniques such as Test Driven Development (TDD), Dependency Injection and mocking.
- Scheduling automated tests using reactive, periodic and triggered builds.
- Living Documentation and how automated tests can be used to establish a shared understanding and a repository of how your system currently behaves.
- The Scrum framework and how best to include collaborative requirement refinement, test automation practices, and Living Documentation.
- Effective Sprint Planning and various approaches for splitting Product Backlog Items into discrete technical tasks to maximise flow during your Sprints.