What's In This Course?

Learn how to specify ideas for new software and features in ways that are more understandable.

Replace expensive manual testing with high-level, automated Acceptance Testing that is stable and resilient to changes to the system or environment.

Dave Farley shares his expertise, and demonstrates techniques from complex projects (widely seen as world-class examples) of the practices to write “Acceptance Tests” in the form of “Executable Specifications”.

  • Why Acceptance Test? and What tools and techniques are effective?

  • How to avoid tests that are difficult, fragile, slow and prone to intermittent failure

  • Capturing & Translating Requirements

  • Scope & Properties of Good Acceptance Tests

  • How we isolate the system under test and create effective, efficient test cases in complex systems

  • Practical Exercises in Writing Specifications and Story-Mapping

  • Managing Test Isolation, Intermittency and Asynchrony

  • The Scope of Acceptance Testing & Test Strategy

Learn from the Expert

Dave Farley, one of the pioneers of Acceptance Testing, shares his Expertise, Teachings and Advice with YOU in Video Lessons, Worksheets and Demos, to Study at Your Convenience.

For Less Than 40% of the Price (compared to Dave’s in-person training events).

Course Objectives:

* Learn tools and techniques to analyse problems in a way that helps to determine which product features to develop.

* Practise effective story-writing using a combination of “Story Mapping” and “Specification by Example” techniques.

* Know how to create and use a “Domain Specific Language” to support the creation and maintenance of “Executable Specifications”

*Build Acceptance Tests, as Executable Specifications, that are not compromised by changes in the system under test

*Learn how to build effective, efficient test cases in complex systems.

Course curriculum

    1. Welcome! from Dave Farley

    2. About This Course

    3. My Learning Objectives

    1. Why Acceptance Test?

    2. What is Acceptance Testing

    3. Teamwork & Communications

    4. BDD - Defining the Behaviour of the System

    5. Exercise 1 - Specifications Without Implementation Detail

    6. BDD - It's All About Behaviour

    7. Event Storming - Understanding Your Problem

    8. Capturing & Translating Requirements

    9. Story-Mapping - Organising Requirements

    10. Exercise 2 - Story Mapping

    11. Specification by Example

    12. The Language of Exec Specs

    13. Review Your Learning - 1. Executable Specifications

    1. Test First

    2. Properties of Good Acceptance Tests

    3. Acceptance Tests & BDD

    4. Exercise 3 - Finding Stories and Examples

    5. Exercise 3 (Answers) - Finding Stories and Examples

    6. Exercise 4 - Thinking not Coding

    7. Real World Worked Example - Part 1 - Finding Stories

    8. Real World Example - Part 2 - Stories to Examples

    9. Review Your Learning - 2. Effective Tests

    1. Building a DSL for Testing

    2. Managing Test Isolation

    3. Protocol Drivers & Stubs

    4. Testing Time

    5. The Four Layer Model

    6. Dealing With Intermittent Tests

    7. Using the Four Layer Model in Cucumber & SpecFlow

    8. Review Your Learning - 3. Test Infrastructure

    1. The Scope of Acceptance Tests

    2. Effective Test Strategy

    3. Review Your Learning - 4. Test Strategy

    1. Congratulations!

    2. My Feedback

    3. References, Links and Recommendations

About this course

  • £599.00
  • 39 lessons
  • 5 hours of video content

Interested in a Group Booking?

Our "ATDD & BDD - From Stories to Executable Specifications" Course is available to book for a Team, or Group of students.

Contact Us -  courses@continuous-delivery.co.uk  
to discuss Your Requirements and Get a Quote.


What Our Customers Say

  • This amazing course is „customer focus in a box“!

    "The ATDD & BDD course is just amazing! Never saw the topic being conveyed that clear and actionable. Feels like a starter kit we have been missing for quite some time." - Christian Gesell

  • The absolute foundation of software engineering!

    “If you want to learn how to build software, you should stop everything, forget anything you thought you knew about software engineering, and (re)start your training with this course.” - Panagiotis Badredin

  • Extremely Useful.

    “I've been a testing nerd since 2006, but I confess acceptance testing has been my biggest gap. This course really helped close that gap tight.” - Eddie Bush

  • Transformational!

    “This course has deeply changed not only the way I see testing but the way I see software development as a whole, starting from requirements gathering to delivering and maintaining production software. I highly recommend it!" - Francesc Castells

  • Fantastic!

    “This course was extremely thorough. It offered varying approaches to UAT testing encouraging more expansive and creative ways to conceptualize and apply testing methodologies to garner more accurate results. I learned a great deal from this information.” - Rikki Gillum


Instructor