gherkin-checker v1.0.5
gherkin-checker
Consistency gherkins checker for nightwatch-cucumber projects.
Given a folder containing gherkin files (.features), a consistency test will check if all the steps used in the gherkins will match in your steps definition file.
How to use
Install the module in your source folder
npm install gherkin-checker --saveand add it to your scripts
"scripts": {
"gherkin-checker": "gherkin-checker"
}or install globally
npm install -g gherkin-checkerand in your source folder simply run
gherkin-checkerConfiguration
In the folder where you'll run the module create a file named gherkin-checker.conf.js if you want to override the default configs.
//default configurations
module.exports = {
features_path: "./features",
steps_path: "./steps/common-steps",
mode: 'full',
components: {
enabled: false,
components_path: "./components/components",
excludedComponents: []
},
reporter: {
type: 'light'
}
}features_path (string)
The folder containing your gherkin files (.features).
steps_path (string)
The file containing your steps definitions.
mode (string)
Define the test running mode.
full: a separate test will be performed for each.featurefile in thefeatures_pathfolderlight: a global test will be performed for all.featurefiles in thefeatures_pathfolder
components (object)
Additional components configurations.
If you use a module that exports a list of components used for mapping css-selectors with this structure:
// example: components.js
module.exports {
_components: {
'component1': 'body',
'component2': '.container',
'component3': '.container div',
'component4': '.footer a.link'
}
}and in your gherkin you have something like this:
#gherkin that uses components
Scenario:
Given I do something
When I click "component1"
Then "component2" is displayedthen you should set components.enable = true.
components.enable (bool)
Enable additional components support
components.components_path (string)
The file containing your components definition.
components.excludedComponents (array)
Array of components you want to skip in consistency check.
reporter (object)
Console reporter configurations.
reporter.type (string)
Define the console report style.
full: both successful and failed assertions will be shownlight: only failed assertions will be shown
credits: the reporter is a custom version of tap-diff
Parameters
you can specify the --path parameter to change the features_path option
Usage: gherkin-checker [options]
Options:
-h, --help output usage information
-V, --version output the version number
-p, --path <path> features folder location (priority over configuration files)
-m, --mode <value> (optional) test mode [full|light])
-r, --report <value> (optional) report style [full|light])