Agile Testing with Acceptance Test Driven Development and Behavior Driven Design

This course is a hands-on workshop intended to teach students how to do Acceptance Test Driven Development. The class begins with an overview of Acceptance Test Driven Development and Behavior Driven Development. It then focuses on requirements, using specification by example. Students are taught to move from User Stories to Executable Specifications to document requirements. After the introductory material, the course shifts its focus to the Cucumber tool and Gherkin language. Students learn how to create executable acceptance tests that are the actual requirements. From there, the steps in the feature are converted into step definitions. Students will work through numerous examples where they create and execute acceptance tests for existing web sites (special sites have been developed for this part of the course) and API’s. As part of these exercises, students will learn to refactor both production and test code, and to create a Domain Specific Language.
Familiarity with programming in Java
2 Days/Lecture & Lab
The course is intended for testers, developers, quality engineers and managers who want a practical course in Acceptance Test Driven Development using Behavior Driven Development. As programming exercises are included in the course work, a knowledge of Java is necessary
  • Introduction to Agile Testing
  • Specifications as Tests
  • ATDD, BDD and TDD
  • BDD in the Agile Context
  • QA and Testers role on an Agile project
  • Specification by Example
  • Cucumber, Gherkin and Executable Specifications
  • Cucumber Best Practices
  • Continuous Integration
  • Non-Functional Requirements and BDD
  • Technical Debt in Agile
  • Code Smells
  • Refactoring Techniques
  • Designing by Intention

Related Scheduled Courses