Test-driven development is a process for developers, not for the outside world. Sometimes our customers and product owners want to see automated tests too, but the kinds of tests we write are too low-level to be helpful to all members of our teams.
This chapter introduces two new software packages: Cucumber and Puppeteer.
We'll use Cucumber to build acceptance tests. There's a Cucumber package for JavaScript which incorporates a special test runner that runs feature files, written in a plain-English language known as Gherkin. These feature files are backed by support scripts that are written in JavaScript. Since Cucumber has its own test runner, it doesn't use Jest, although we will make use of Jest's expect package.
The Gherkin language is a popular syntax for writing plain-language tests that help us collaborate with our...