[Cucumber Gherkin reference](https://cucumber.io/docs/gherkin/reference/) # Features ``` ## Feature: title - AS A role - I WANT feature - SO THAT value ``` # Background ``` ## Background: - GIVEN setting - AND condition ``` # Scenarios ``` ### Scenario: title - GIVEN setting - WHEN action - THEN outcome - AND condition - BUT negation ``` ## Scenario Outlines with Examples ``` #### Examples: | var1 | var2 | ... | ---- | ---- | ... | val | val | ... ``` Examples are used to set `<vars>` in Scenario **Outlines**: ``` ### Scenario Outline: eating - GIVEN there are `<start>` cucumbers - WHEN I eat `<eat>` cucumbers - THEN I should have `<left>` cucumbers #### Examples: | start | eat | left | | ----- | --- | ---- | | 12 | 5 | 7 | | 20 | 5 | 15 | ``` # Comments ``` - GIVEN a blog post named "Random" with Markdown body """ Some Title, Eh? =============== Here is the first paragraph of my blog post. Lorem ipsum dolor sit amet, consectetur adipiscing elit. """ ``` # Data Tables ``` - GIVEN the following users exist: | name | email | twitter | | ------ | ------------------ | --------------- | | Aslak | [email protected] | @aslak_hellesoy | | Julien | [email protected] | @jbpros | | Matt | [email protected] | @mattwynne | ```