Skip to main content
CourseFlix

404 - Acceptance Testing: BDD From Stories to Executable Specifications

5h 33m 38s
English
Paid

Unleash the power of acceptance testing as a pivotal tool for requirement specification, automation, and enhancing the quality of software systems. In this course, you will discover how to express new software ideas and functionalities comprehensively for both business and developers. Transition from expensive manual testing to resilient automated acceptance tests that withstand system and environment fluctuations.

Key Learning Objectives

Learn from the expertise of Dave Farley and explore examples from renowned, large-scale projects that set the industry standard. The course illustrates the process of crafting acceptance tests as executable specifications using the BDD (Behavior-Driven Development) methodology for accurate description of system behavior.

Modern Features of Acceptance Testing

A highlighted topic in the course is "Acceptance Testing as a Programming Language for AI". You will uncover how meticulously designed acceptance tests, along with the Domain-Specific Language (DSL) approach, can vastly enhance the quality of AI-generated code, and how to utilize these specifications as precise, repeatable prompts.

Course Curriculum

  • The purpose of acceptance tests and the most effective tools and techniques to use.
  • Strategies to avoid fragile, slow, and unstable tests that tend to be flaky.
  • Methods to capture and translate requirements into formal specifications.
  • The application scope and characteristics of quality acceptance tests.
  • Hands-on exercises in writing specifications and performing story mapping.
  • Managing test isolation, asynchronicity, and instability challenges.
  • Applying acceptance testing as a precise language for AI collaboration.
  • Validating AI-generated code through effective acceptance tests.
  • Developing a testing strategy and building an effective test suite for complex systems.

Who Should Enroll?

This course is designed for engineers, testers, architects, and technical leaders who are eager to establish a dependable, scalable, and contemporary practice of acceptance testing within their organizations.

About the Author: David Farley

David Farley thumbnail

Dave Farley — Software Engineering Expert

Dave Farley is a global expert in software engineering. He is known for his work in continuous delivery, DevOps, and modern development practices.

He co-wrote the award-winning book Continuous Delivery and the bestseller Modern Software Engineering. Many developers and teams use these books as core guides.

Key Contributions

Dave helped write the Reactive Manifesto. This document outlines how to build responsive, resilient, and scalable systems.

He also shares his knowledge through:

  • A YouTube channel on modern software engineering
  • A blog on development and delivery best practices
  • Talks at international tech conferences

Work at LMAX

Dave worked as a development manager at LMAX Ltd. The company is known for:

  • High code quality
  • Fast and reliable systems
  • Strong engineering practices

His work at LMAX shaped methods used in high‑frequency and reliable systems.

Watch Online 27 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 27 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Why Acceptance Test?
All Course Lessons (27)
#Lesson TitleDurationAccess
1
Why Acceptance Test? Demo
05:18
2
What is Acceptance Testing
14:37
3
Teamwork & Communications
10:54
4
BDD - Defining the Behaviour of the System
12:26
5
BDD - It's All About Behaviour
07:24
6
Event Storming - Understanding Your Problem
10:43
7
Capturing & Translating Requirements
14:03
8
Story-Mapping - Organising Requirements
10:47
9
Specification by Example
09:20
10
The Language of Exec Specs
07:45
11
Test First
05:02
12
Properties of Good Acceptance Tests
13:54
13
Acceptance Tests & BDD
10:52
14
Exercise 3 (Answers) - Finding Stories and Examples
19:09
15
Real World Worked Example - Part 1 - Finding Stories
13:25
16
Real World Example - Part 2 - Stories to Examples
14:25
17
Building a DSL for Testing
13:06
18
Managing Test Isolation
22:35
19
Protocol Drivers & Stubs
11:38
20
Testing Time
09:36
21
The Four Layer Model
14:47
22
Dealing With Intermittent Tests
16:50
23
Using the Four Layer Model in Cucumber & SpecFlow
12:08
24
Acceptance Testing as a Programming Language
17:35
25
Exercise 5 (Demo) - Programming with AI & Acceptance Tests
13:39
26
The Scope of Acceptance Tests
11:39
27
Effective Test Strategy
10:01
Unlock unlimited learning

Get instant access to all 26 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Books

Read Book 404 - Acceptance Testing: BDD From Stories to Executable Specifications

#Title
1Exercise 1 - Specifications Without Implementation Detail
2Exercise 2 - Story Mapping
3Exercise 3 - Finding Stories and Examples
4205 ATDD - Finding Stories and Examples - Answers
5Exercise 4 - Thinking not Coding
6Exercise 5 - Programming with AI & Acceptance Tests
7References, Links and Recommendations