This package provides a Gherkin linter for PHP heavily inspired by vsiakka/gherkin-lint and using the PHP Gherkin Parser.
NOTE: Gherkin Lint requires PHP 8.1
Install with Composer:
$ composer require --dev dantleech/gherkin-lint
Lint your feature files:
$ ./vendor/bin/gherkinlint lint features/
To see the available and enabled rules run:
$ ./vendor/bin/gherkinlint rules
By default all rules are enabled. In order to customise or disable them create
a config file gherkinlint.json
:
{
"rules": {
"allowed-tags": {
"allow": ["@my-special-tag", "@my-other-tag"]
},
"filename": {
"enabled": false
}
}
}
Use the rules
command to see which rules are enabled.
Rules can be disabled by adding a comment before the Feature declaration:
# @gherkinlint-disable-rule keyword-order
Feature: My feature with strange keyword orders
Disable multiple rules with comma separation:
# @gherkinlint-disable-rule keyword-order, someother-rule
Feature: My feature with strange keyword orders
Make a pull request!