WDIO Cucumber Framework Adapter
A WebdriverIO plugin. Adapter for CucumberJS v5 testing framework.
Installation
The easiest way is to keep @wdio/cucumber-framework
as a devDependency in your package.json
.
{
"devDependencies": {
"@wdio/cucumber-framework": "^6.3.6"
}
}
You can simple do it by:
npm install @wdio/cucumber-framework --save-dev
Instructions on how to install WebdriverIO
can be found here.
Configuration
Following code shows the default wdio test runner configuration...
module.exports = {
framework: 'cucumber',
cucumberOpts: {
timeout: 10000
}
};
cucumberOpts
Options
backtrace
Show full backtrace for errors.
Type: Boolean
Default: false
requireModule
Require modules prior to requiring any support files.
Type: String[]
Default: []
Example: ['@babel/register']
or [['@babel/register', { rootMode: 'upward', ignore: ['node_modules'] }]]
failAmbiguousDefinitions
Please note that this is a @wdio/cucumber-framework specific option and not recognized by cucumber-js itself
Treat ambiguous definitions as errors.
Type: Boolean
Default: false
failFast
Abort the run on first failure.
Type: Boolean
Default: false
ignoreUndefinedDefinitions
Please note that this is a @wdio/cucumber-framework specific option and not recognized by cucumber-js itself
Treat undefined definitions as warnings.
Type: Boolean
Default: false
name
Only execute the scenarios with name matching the expression (repeatable).
Type: REGEXP[]
Default: []
profile
Specify the profile to use.
Type: String[]
Default: []
require
Require files containing your step definitions before executing features. You can also specify a glob to your step definitions.
Type: String[]
Default: []
Example: [path.join(__dirname, 'step-definitions', 'my-steps.js')]
snippetSyntax
Specify a custom snippet syntax.
Type: String
Default: undefined
snippets
Hide step definition snippets for pending steps.
Type: Boolean
Default: true
source
Hide source uris.
Type: Boolean
Default: true
strict
Fail if there are any undefined or pending steps
Type: Boolean
Default: false
tagExpression
Only execute the features or scenarios with tags matching the expression. Note that untagged
features will still spawn a Selenium session (see issue webdriverio/webdriverio#1247).
Please see the Cucumber documentation for more details.
If passing as a command-line argument, compound expressions may need to be enclosed in three sets of double quotes if WebdriverIO is invoked using npx
on Windows.
E.g.: npx wdio wdio.config.js --cucumberOpts.tagExpression """@Smoke and not @Pending"""
Type: String
Default: ``
tagsInTitle
Add cucumber tags to feature or scenario name
Type: Boolean
Default: false
timeout
Timeout in milliseconds for step definitions.
Type: Number
Default: 30000
retry
Specify the number of times to retry failing test cases.
Type: Number
Default: 0
retryTagFilter
Only retries the features or scenarios with tags matching the expression (repeatable). This option requires '--retry' to be specified.
Type: RegExp
For more information on WebdriverIO see the homepage.