Cucumber has various strategies and implementations that provide users the ability of creating expressive scenarios. In this course, you'll learn Gherkin and the ability of creating expressive scenarios optimizing test outputs.
Learning Objectives
Exploring Gherkin
- start the course
- describe the purpose of Gherkin in Test-driven Development and benefits along with the syntax used
- recognize the purpose of using features in Gherkin files and how to implement it to a project
Working with Step Definitions
- define steps and step definitions and how it is implemented in an example
- use features such as capture groups and wildcards and multiple arguments in Cucumber steps
- describe the available result states for a Cucumber scenario and provide examples of scenarios containing steps that lead to these results
Developing Expressive Scenarios
- describe a background section in a Cucumber feature file to outline steps common to all scenarios
- use doc strings and data tables for data that doesn't fit on one line in Cucumber scenarios
- use scenario outlines to define steps for Cucumber scenarios
- use nest steps in Cucumber scenarios
Optimizing Scenarios
- describe the use of transforms to remove duplication in Cucumber step definitions
- describe the Cucumber World object and refactor steps into Ruby helper methods that are added to the World
- describe the uses for directories and tagging Cucumber scenarios at feature and scenario level
Practice: Step Definitions and Scenarios
- recognize the implementations of steps and step definitions, and how expressive scenarios work