Gherkin is a domain specific language that is comprehensible to humans. Its main aim is to describe the behavior of the product system. In order to specify the document structure, this language uses indentation. It is a line-oriented language like Python. Every line starts with one of the key words and describes one step.
What are the advantages of Gherkin?
- It is not obligatory to have the tests designed especially by the tester. They can be written by specialists without any program skills or experience in software testing, for example, by business analytic.
- With the help of Gherkin tests, it is possible to show the client the functionality that has been covered with tests.
- The test execution procedure is rather simple – the testers should just assign a required code to each of the lines.
Besides that, Gherkin can be used as the project documentation and serve as automated tests. As it was mentioned, Gherkin has several keywords. Here are some of them:
- Feature – a short but full description of the functional;
- Scenario – a particular business situation (it can be reviewed as the steps to reproduce);
- Scenario Outlines helps to reduce the code and specify several parameters in one scenario;
- Background can be an attribute of Scenario. It is run before each scenario. Background should be brief and comprehensive.
Every feature includes several scenarios, while every scenario consists of the list of specified steps. At the beginning of every step, there is one key word – Given, When, Then, But or And.
The specialists who perform functional testing, system checking, unit testing or acceptance testing should be aware of Gherkin too.