Link

settings.json

The settings.json file allows the user to specify global settings for a kosher project. Some values in the file are defaults but can be overridden by flags of the run command (e.g. --appVersion, --environment).

Format

{
    "projectName": "kosher",
    "appVersion": "1.0.0",
    "driver": "chrome",
    "reportFormat": "pretty",
    "dateFormat": "MM/DD/YYYY",
    "defaultEnvironment": "test",
    "screenFormat": "desktop",
    "quitOnFail": false,
    "ignoreInvisible": true,
    "waitAfterScenario": 0,
    "waitAfterStep": 0,
    "accessibility": {
		"ruleSets": [
			"wcag21aa",
			"section508"
		],
		"impactThreshold": "serious"
	},
    "screenFormats": {
        "desktop": {
            "width": 2000,
            "height": 980
         },
        "mobile": {
            "width": 362,
            "height": 868
        },
        "tablet": {
            "width": 814,
            "height": 868
        },
        "landscape": {
            "width": 522,
            "height": 362
        }
    },
	"integrations": {
		"jira": {
			"host": "http://127.0.0.1",
			"defaults": {
				"projectKey": "PROJE",
				"issueType": "Bug",
				"affectsVersion": "1.0.0",
				"labels": "test,functional,kosher",
				"priority": "Normal"
			}
		}
	}
}

Properties

projectName

Sets the name of the project recorded in results files.

Characteristic Description
type string
required no
default kosher tested app

appVersion

Sets the version of the project recorded in results files.

Characteristic Description
type string
required no
default 1.0.0

driver

Specifies which webdriver is used to execute the tests. Valid options are chrome, ie, phantomjs, desktop

Characteristic Description
type string
required no
default chrome

reportFormat

Specifies what format is used to report test results. Valid options are: pretty, bootstrap, simple, progress, junit, cucumber-json

For descriptions of the reports, see Reports

Characteristic Description
type string, string array
required no
default pretty

You can use multiple formats by setting the reportFormat to a JSON string array: ["pretty", "bootstrap"]

dateFormat

Specifies the format used when validating or setting dates.

Characteristic Description
type string
required no
default MM/DD/YYYY

Valid placeholders are:

Placeholder Description Example
MMMM Full month January
MMM Short month Jan
MM Numeric month 01
YYYY Full year 2006
YY Short year 06
DDDD Full day Monday
DDD Short day Mon
DD Numeric day 02

defaultEnvironment

Specifies the default environment to execute tests in. For more information, see environments.json.

Characteristic Description
type string
required no
default test

screenFormat

Specifies which dimensions to apply to newly opened window and when the I maximize the window step is executed. For more information, see screenFormats below.

Characteristic Description
type string
required no
default desktop

quitOnFail

Specifies if kosher continues executing remaining scenarios after a step fails.

Characteristic Description
type boolean
required no
default false

ignoreInvisible

Specifies if kosher should act as if elements that are invisible to the user do not exist.

Characteristic Description
type boolean
required no
default true

waitAfterScenario

Specifies a wait time to pause for following every scenario. This is measured in milliseconds.

Characteristic Description
type int
required no
default 0

waitAfterStep

Specifies a wait time to pause for following every step. This is measured in milliseconds.

Characteristic Description
type int
required no
default 0

accessibility

Configures how the Axe accessiblity API will scan the page for issues.

ruleSets

The Axe tags to apply to the page. These are effectively sets of rules. You can find a list of available rule sets at Axe API Documentation.

Characteristic Description
type string array
required no
default [ “wcag2a”, “wcag2aa”, “section508” ]

impactThreshold

Specifies the impact (i.e. severity) that an accessibility finding must be to fail the I test the page for accessibility step. See the Axe API Documentation for more details.

Characteristic Description
type string
required no
default critical
available options minor, moderate, serious, critical

screenFormats

Defines available screen formats. One of these must be selected by the screenFormat option above.

Each option in the screenFormats object must define a width and height property, both of type int.

Characteristic Description
type object
required no
default
{
    "desktop": {
        "width": 2000,
        "height": 980
    },
    "mobile": {
        "width": 362,
        "height": 868
    },
    "tablet": {
        "width": 814,
        "height": 868
    },
    "landscape": {
        "width": 522,
        "height": 362
    }
}