Sometimes steps in a scenario need to describe data that doesn’t easily fit on a single line of Given, When, or Then. Gherkin allows us to place these details in a table right underneath a step. Data tables give you a way to extend a Gherkin step beyond a single line to include a larger piece of data.
For example, consider these steps:
Given a User "Michael Jackson" born on August 29, 1958
And a User "Elvis" born on January 8, 1935
And a User "John Lennon" born on October 9, 1940
Boring! We wouldn’t tolerate this kind of repetitive stuff in a traditional specification document, and we don’t have to tolerate it in a Cucumber specification either. We can collect those steps together into a single step that ...