WDIO Cucumber Framework Adapter
A WebdriverIO plugin. Adapter for CucumberJS v4 testing framework. To use v2 install this package with v1.1.1 and to use v1 with v0.3.1.
Installation
The easiest way is to keep wdio-cucumber-framework
as a devDependency in your package.json
.
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...
// wdio.conf.jsmoduleexports = // ... framework: 'cucumber' cucumberOpts: timeout: 10000 // ...;
cucumberOpts
Options
backtrace
Show full backtrace for errors.
Type: Boolean
Default: false
compiler
Require files with the given EXTENSION after requiring MODULE.
Type: String[]
Default: *[]*
Example: ['js:babel-core/register']
To passe options to the compiler use [[String, options]]
Example: [ ['js:babel-register', { ignore: [] }] ]
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.
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
Development
All commands can be found in the package.json. The most important are:
Watch changes:
$ npm run watch
Run tests:
$ npm test # run test with coverage report: $ npm run test:cover
Build package:
$ npm build
For more information on WebdriverIO see the homepage.