Skip to main content

Settings Reference

Core Settings#

gwen.assertion.mode

Controls whether or not hard, soft or sustained assertions are enabled.

Supported values

  • hard to halt feature execution on the first assertion error and report failure
  • soft to collect all assertion errors and continue execution whilst reporting failures
  • sustained to collect all assertion errors and continue execution without reporting failures
Default value: hard
  gwen.assertion.mode = hard
gwen.associative.meta

Controls whether or not same named feature and meta files in a directory are to be exclusively associated.

Supported values

  • true to enable association
    • Gwen will load a discovered meta file only if it has the same name and is in the same directory as the current feature being executed.
  • false to disable association
    • Gwen will unconditionally load every meta file discovered in the path to the current feature being executed.
Default value: false (true will be the new default in the upcomming Gwen 3 release)
  gwen.associative.meta = false
gwen.auto.discover.data.csv

Enables or disables automatic discovery and loading of CSV data feed files.

Supported values

  • true to enable
  • false to disable
    • Prevents Gwen from automatically discovering and loading CSV files in the path of an executing feature, forcing the user to control explicitly load CSV files through the -i/--import CLI option.
Default value: true
  gwen.auto.discover.data.csv = true
gwen.auto.discover.meta

Enables or disables automatic discovery and loading of meta files.

Supported values

  • true to enable
  • false to disable
    • Prevents Gwen from automatically discovering and loading meta files in the path of an executing feature, forcing the user to load meta explicitly through the -m/--meta CLI option or meta imports.
Default value: true
  gwen.auto.discover.meta = true
gwen.behavior.rules
gwen.behaviour.rules

Controls whether strict or lenient rules around Given-When-Then usage will be enforced for features.

Supported values

  • strict to enforce the following strict rules:
    • Steps in scenarios and backgrounds must satisfy Given-When-Then order
    • Givens must set context
    • Whens must perform actions
    • Thens must assert expectations
    • Buts must perform assertions (and are permitted after Then steps)
    • StepDefs tagged with
      • @Context : can only be called by Givens
      • @Action : can only be called by Whens
      • @Assertion : can only be called by Thens or Buts
  • lenient to relax all strict rules
Default value: lenient
  gwen.behavior.rules = lenient
  gwen.behaviour.rules = lenient
gwen.feature.dialect

Sets the default Gherkin dialect (or spoken language).

Supported values

Default value: en
  gwen.feature.dialect = en
gwen.feature.failfast

Enables or disables fail fast mode at the feature level.

Supported values

  • true to enable
    • Will fail a feature as soon as the first scenario fails before resuming with the next feature.
  • false to disable
Default value: true
  gwen.feature.failfast = true
gwen.feature.failfast.exit

Controls whether to exit or resume with the next feature when a feature fails.

Supported values

  • true to enable
    • Will fail a feature as soon as the first scenario fails and exit immediately.
  • false to disable
    • Will resume with the next feature if the previous one fails.
Default value: false
  gwen.feature.failfast.exit = false
gwen.feature.mode

Permits declarative or imperative specifications at the feature level.

Supported values

  • declartive to permit declative feature specs
  • imperative to permit imperative feature specifications
    • DSL steps permitted in features
Default value: imperative
  gwen.feature.mode = imperative
gwen.mask.char

Sets the masking character used for logging masked settings.

Supported values

  • Any single character
Default value: โ—
  gwen.mask.char = โ—
gwen.parallel.maxThreads

Sets the maximum number of permitted parallel executor threads.

Supported values

  • A positive integer value denoting the maximum number of threads to allow
  • Zero to allow all available cores to be utilitised (one thread per core)
Default value: 0
  gwen.parallel.maxThreads = 0
gwen.rampup.interval.seconds

Sets the ramp up interval for staggered parallel execution.

Supported values

  • A positive integer denoting the number of seconds to wait before executing successive features in parallel
  • Zero for no interval or delay between successive feature executions
Default value: 0


Example: A 5 second interval would stagger executions like this over 4 cores:

  time  00   05   10   15   seconds        โ”‚    โ”‚    โ”‚    โ”‚core 1  โ”‚<โ”€โ”€ feature 1a โ”€โ”€>|<โ”€โ”€ feature 1b โ”€โ”€> ..core 2  โ”‚    โ”‚<โ”€โ”€ feature 2a โ”€โ”€>|<โ”€โ”€ feature 2b โ”€โ”€> ..core 3  โ”‚    โ”‚    โ”‚<โ”€โ”€ feature 3a โ”€โ”€>|<โ”€โ”€ feature 3b โ”€โ”€> ..core 4  โ”‚    โ”‚    โ”‚    โ”‚<โ”€โ”€ feature 4a โ”€โ”€>|<โ”€โ”€ feature 4b โ”€โ”€> ..

  gwen.rampup.interval.seconds = 0
gwen.report.overwrite

Controls whether to overwrite previously generated reports or create a timestamped backup instead.

Supported values

  • true to overwrite previous report
  • false to backup previous report into a timestamped directory
Default value: true
  gwen.report.overwrite = true
gwen.report.suppress.meta

Controls whether or not to suppress meta from generated HTML reports.

Supported values

  • true to suppress meta
  • false to include meta
Default value: false
  gwen.report.suppress.meta = false
gwen.report.slideshow.framespersecond

Sets the default number of frames per second to set the image playback speed to in generated slideshows.

Supported values

  • A positive integer denoting the number of frames per second
Default value: 4
  gwen.report.slideshow.framespersecond = 4
gwen.state.level

Controls whether to maintain state at the feature or scenario level.

Supported values

  • feature for feature level state that is shared across scenarios in a feature (each feature gets a new state)
  • feature for scenario level state that is not shared across scenarios (each scenario gets a new state)
Default value: feature
  gwen.state.level = feature

Web Settings#

gwen.web.accept.untrusted.certs

Controls whether or not the web driver should accept untrusted (self signed) SSL certificates.

Supported values

  • true to accept
  • false to decline
Default value: true
  gwen.web.accept.untrusted.certs = true
gwen.web.authorize.plugins

Controls whether or not to permit browser plugins to run.

Supported values

  • true to permit
  • false to deny
Default value: false
  gwen.web.authorize.plugins = false
gwen.web.browser

Sets the default browser that Gwen will use.

Supported values

  • chrome for Chrome browser
  • firefox for Firefox browser
  • safari for Safari browser
  • edge for Edge browser, since v2.35.0
  • ie for IE browser
Default value: chrome
  gwen.web.browser = chrome
gwen.web.browser.headless

Controls whether or not to run the browser in headless mode.

Supported values

  • true to run headless
  • false to not run headless
Default value: false


Notes

Headless mode is supported for Chrome, Firefox, and Edge browsers only.
  gwen.web.browser.headless = false
gwen.web.browser.size

Sets the size of the browser window.

Supported values

  • String of format <width> x <height>, where:
    • <width> is a positive integer denoting the desired width
    • >height> is a positive integer denoting the desired height

This setting is only applied if gwen.web.maximize is false.

  gwen.web.browser.size = 1200x800
gwen.web.capability.<name>

Sets a desired web capability on the underlying web driver. Some capabilities are browser specific. If you set a capability that is not supported for the browser you are targeting, then it will have no effect and will be ignored. Each setting is a new entry with a different <name>. You can configure as many as you need.

Where

Supported values

  • Only capabilities that accept values of type String, Integer, or Boolean are supported.

Example

  gwen.web.capability.ignoreZoomSetting = true
gwen.web.capture.screenshots

Controls whether or not to capture screenshots and generate slideshow.

Supported values

  • true to enable
  • false to disable
Default value: false
  gwen.web.capture.screenshots = false
gwen.web.capture.screenshots.highlighting

Controls whether or not to capture screenshots of element highlighting (in addition to standard screenshots).

Supported values

  • true to enable
  • false to disable
Default value: false
  gwen.web.capture.screenshots.highlighting = false
gwen.web.capture.screenshots.duplicates

Controls whether or not consecutively identical screenshots should be captured or discarded.

Supported values

  • true to keep duplicates
  • false to discard duplicates
Default value: false
  gwen.web.capture.screenshots.duplicates = false
gwen.web.highlight.style

Sets the HTML styling used to highlight elements that Gwen interacts with.

Supported values

  • HTML style strings
Default value: background: yellow; border: 2px solid gold;
  gwen.web.highlight.style = background: yellow; border: 2px solid gold;
gwen.web.implicit.element.focus

Controls whether or not Gwen should move the focus onto elements before interacting with them.

Supported values

  • true to enable auto focus
  • false to disable auto focus
Default value: true
  gwen.web.implicit.element.focus = true
gwen.web.implicit.js.locators

Controls whether or not Gwen should implicitly convert all locators to JavaScript (for greater reliability with web pages that dynamically display or render elements and manipulate the DOM).

Supported values

  • true to enable
  • false to disable
Default value: false
  gwen.web.implicit.js.locators = false
gwen.web.locator.wait.seconds

Sets the maximum number of seconds that Gwen should wait when locating web elements before timing out.

Supported values

  • A positive integer denoting a number of seconds
Default value: gwen.web.wait.seconds or 10 if not configured
  gwen.web.locator.wait.seconds = 10
gwen.web.maximize

Controls whether or not the web driver should maximize the browser window.

Supported values

  • true to maximize
  • false to not maximize
Default value: false
  gwen.web.maximize = false
gwen.web.remote.localFileDetector

Controls whether or not the local file detector on remote web driver will be enabled.

Supported values

  • true to enable
  • false to disable
Default value: false


This setting is ignored if gwen.web.remote.url is not set.

  gwen.web.remote.localFileDetector = false
gwen.web.sendKeys.clearFirst

Controls whether or not Gwen will clear input fields before sending keys to them.

Supported values

  • true to clear first
  • false to not clear first
Default value: false
  gwen.web.sendKeys.clearFirst = false
gwen.web.sendKeys.clickFirst

Controls whether or not Gwen will click input fields before sending keys to them.

Supported values

  • true to click first
  • false to not click first
Default value: false
  gwen.web.sendKeys.clickFirst = false
gwen.web.throttle.msec

Sets the number of milliseconds to wait between web driver interactions. Also directly controls web element highlighting duration. This enables you to fine tune the execution speed to suit high or low performing websites.

Supported values

  • A positive integer denoting a number of milliseconds. Set to zero for maxmum speed with no highlighting.
Default value: 100
  gwen.web.throttle.msec = 100
gwen.web.useragent

Sets the user agent header in the browser to the literal string value assigned.

Supported values

  • User agent string

Example

  gwen.web.useragent = Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19
gwen.web.wait.seconds

Sets the default maximum number of seconds that Gwen should wait for time senstive operations before timing out.

Supported values

  • A positive integer denoting a number of seconds
Default value: 10


This value will also be used as the locator timeout unless gwen.web.locator.wait.seconds is set to a different value.

  gwen.web.wait.seconds = 10

Chrome#

gwen.web.chrome.args

Comma separated list of arguments to pass to the Chrome web driver.

Supported values

Example

  gwen.web.chrome.args = --ignore-certificate-errors,--window-size=1920,1080
gwen.web.chrome.args.<seqNo>

Passes an argument to the Chrome web driver.

Where

  • <seqNo> is a unique sequence number

Supported values

Example

  gwen.web.chrome.args.1=--ignore-certificate-errors  gwen.web.chrome.args.2=--window-size=1920,1080
gwen.web.chrome.extensions

Comma separated list of Chrome extensions to load.

Supported values

  • A relative or absolute file path to an extension (.crx) file or directory
  gwen.web.chrome.extensions = path/to/extenstion.crx
gwen.web.chrome.mobile.<emulation>

Mobile emulation for Chrome.

Where

  • <emulation> can be one or more of:
    • deviceName for the device name
    • width for the device width
    • height for the device height
    • pixelRatio for the device pixel ratio
    • touch for the device touch mode

Examples

Emulate by name

  gwen.web.chrome.mobile.deviceName = Pixel 2

Or emulate by metrics

  gwen.web.chrome.mobile.width      = 360  gwen.web.chrome.mobile.height     = 640  gwen.web.chrome.mobile.pixelRatio = 3.0  gwen.web.chrome.mobile.touch      = true
gwen.web.chrome.path

Overrides the path to the Chrome browser binary. If not set, the underlying driver will use the default system Chrome install.

Supported values

  • The path the the Chrome application.
    • On macOS, this should be the actual binary, not just the app (e.g., /Applications/Google Chrome.app/Contents/MacOS/Google Chrome).
  gwen.web.chrome.path = /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
gwen.web.chrome.prefs

Comma separated list of Chrome preferences to set.

Supported values

Example

  gwen.web.chrome.prefs = download.default_directory=path/to/dir,prompt_for_download=false
gwen.web.chrome.pref.<name>

Sets a Chrome preference.

Where

Supported values

  • Comma separate list of <name>=value pairs

Examples

  gwen.web.chrome.pref.download.default_directory=path/to/dir  gwen.web.chrome.pref.prompt_for_download=false

Edge#

gwen.web.edge.args

Comma separated list of arguments to pass to the Edge web driver.

Supported values

Example

  gwen.web.edge.args = --ignore-certificate-errors,--window-size=1920,1080
gwen.web.edge.args.<seqNo>

Passes an argument to the Edge web driver.

Where

  • <seqNo> is a unique sequence number

Supported values

Example

  gwen.web.edge.args.1=--ignore-certificate-errors  gwen.web.edge.args.2=--window-size=1920,1080
gwen.web.edge.extensions

Comma separated list of Edge extensions to load.

Supported values

  • A relative or absolute file path to an extension (.crx) file or directory
  gwen.web.edge.extensions = path/to/extenstion.crx
gwen.web.edge.mobile.<emulation>

Mobile emulation for Edge.

Where

  • <emulation> can be one or more of:
    • deviceName for the device name
    • width for the device width
    • height for the device height
    • pixelRatio for the device pixel ratio
    • touch for the device touch mode
    • userAgent for the device user agent

Examples

Emulate by name

  gwen.web.edge.mobile.deviceName = Pixel 2

Or emulate by metrics

  gwen.web.edge.mobile.width      = 360  gwen.web.edge.mobile.height     = 640  gwen.web.edge.mobile.pixelRatio = 3.0  gwen.web.edge.mobile.touch      = true
gwen.web.edge.path

Overrides the path to the Edge browser binary. If not set, the underlying driver will use the default system Edge install.

Supported values

  • The path the the Edge application.
    • On macOS, this should be the actual binary.
  gwen.web.edge.path = C:/Program Files (x86)/Microsoft/Edge Dev/Application/msedge.exe
gwen.web.edge.prefs

Comma separated list of Edge preferences to set.

Supported values

Example

  gwen.web.edge.prefs = download.default_directory=path/to/dir,prompt_for_download=false
gwen.web.edge.pref.<name>

Sets a Edge preference.

Where

Supported values

  • Comma separate list of <name>=value pairs

Examples

  gwen.web.edge.pref.download.default_directory=path/to/dir  gwen.web.edge.pref.prompt_for_download=false

Firefox#

gwen.web.firefox.prefs

Comma separated list of Firefox preferences to set.

Supported values

  • Firefox preferences (for full list, visit about:config in your Firefox browser)

Example

  gwen.web.firefox.prefs = browser.download.useDownloadDir=false,browser.download.loglevel=Error
gwen.web.firefox.pref.<name>

Sets a Firefox preference.

Where

  • <name> is a Firefox preference name

Supported values

  • Firefox preferences (for full list, visit about:config in your Firefox browser)

Examples

  gwen.web.firefox.pref.browser.download.useDownloadDir=false  gwen.web.firefox.pref.browser.download.loglevel=Error
gwen.web.suppress.images

Controls whether or not image rendering should be suppressed in the browser (firefox only).

Supported values

  • true to suppress
  • false to not suppress
Default value: false
  gwen.web.suppress.images = false