Lints gherkin files
This tool lints gherkin files.
run gherkin_lint
on a list of files
gherkin_lint -f '<wild_card_path>' #default is `features/**/*.feature`
With --disable CHECK
or --enable CHECK
it’s possible to disable respectivly enable program wide checks except when a linter requires additional values to be set in order to be valid. Currently only RequiredTagStartsWith meets this criteria.
Checks could be disabled using tags within Feature Files. To do so, add @disableCHECK.
Detailed usage within the disable_tags feature.
Assuming there are feature files in the current directory. Then call.
docker run -ti -v $(pwd):/src -w /src gherkin/lint *.feature
This will mount the current directory within the Gherkin Lint Docker Container and then check all feature files.
There are errors and warnings.
Warnings are for issues that do not influence the returncode. These issues are also for introducing new checks.
These new checks will stay some releases as warning and will be later declared as error, to give users the possibility to adapt their codebase.
If there is at least one error, the returncode will be set to ERROR (!= 0).
Install it with:
sudo gem install gherkin_lint
After that gherkin_lint
executable is available.
If you have a custom configuration you’d like to run on a regular basis instead of passing enable and disable flags through the CLI on every run, you can configure a .gherkin_lint.yml
file that will be loaded on execution. The format and available linters are in config/default.yml