jest-environment-nightwatch
v0.2.2
Published
Nightwatch.js environment for Jest
Downloads
26
Maintainers
Readme
jest-environment-nightwatch
Nightwatch 2 environment for Jest. Nightwatch.js is an integrated test framework for performing automated end-to-end testing on web applications and websites, across all major browsers.
npm install jest-environment-nightwatch
Usage:
Update your Jest configuration:
{
testEnvironment: 'jest-environment-nightwatch',
testEnvironmentOptions: {
// Nightwatch related options
headless: true,
browserName: 'chrome',
baseUrl: '',
verbose: false,
output: true,
env: null,
parallel: false,
devtools: false,
debug: false,
autoStartSession: true,
persistGlobals: true,
configFile: './nightwatch.conf.js',
globals: {},
webdriver: {},
timeout: null,
enableGlobalApis: false,
alwaysAsync: true,
desiredCapabilities: {},
async setup(browser) {},
async teardown(browser) {},
}
}
Nightwatch options
| Name| Type | Description | Default |
|:--- | :--- | :--- | :---: |
| headless
| Boolean | Run Nightwatch in headless mode (available in Firefox, Chrome, Edge) | true
|
| browserName
| String | Browser name to use; available options are: chrome
, firefox
, edge
, safari
| none |
| baseUrl
| String | The base url to use for the when using .navigateTo()
with relative urls. When doing component testing it needs to be set to the url running the Vite dev server. | http://localhost:3000
|
| verbose
| Boolean | Enable complete Nightwatch http logs. | false
|
| output
| Boolean | Show Nightwatch output. | true
|
| env
| String | Nightwatch test environment to use, from nightwatch.conf.js
. Learn more about test environments in the Nightwatch docs. | none |
| parallel
| Boolean | Set this to true when running tests in parallel | false
|
| devtools
| Boolean | Chrome only: automatically open the chrome devtools | false
|
| debug
| Boolean | Component testing only: pause the test execution after rendering the component | false
|
| autoStartSession
| Boolean | Start the Nightwatch session automatically. If this is disabled, you'll need to call jestNightwatch.launchBrowser()
in your tests. | true
|
| persistGlobals
| Boolean | Persist the same globals object between runs or have a (deep) copy of it per each test. Learn more about test globals in the Nightwatch docs.| true
|
| configFile
| String | The Nightwatch config file to use. A config file will be auto-generated by default, but this allows you to change that. Learn more about the Nightwatch config in the Nightwatch docs. | ./nightwatch.conf.js
|
| globals
| Object | A list of globals to be used in Nightwatch. Globals are available on browser.globals
. Learn more about the Nightwatch test globals in the Nightwatch docs. | none |
| webdriver
| Object | A list of Webdriver related settings to configure the Nightwatch Webdriver service. Learn more about the Nightwatch webdriver settings in the Nightwatch docs. | none |
| timeout
| Number | Set the global timeout for assertion retries before an assertion fails. | 5000
|
| enableGlobalApis
| Boolean | The Nightwatch global APIs (element(), expect()) are disable by default. | false
|
| desiredCapabilities
| Object | Define custom Selenium capabilities for the current session. Learn more about the specific browser driver that it is being used on the Nightwatch docs. | none |
| setup()
| Function | Additional setup hook to be executed after Nightwatch has been started. | none |
| teardown()
| Function | Additional teardown hook to be executed with the Nightwatch api object. | none |
API
global.browser
The Nightwatch browser API object. Unavailable when autoStartSession
is off.
global.jestNightwatch
The Jest environment used the Nightwatch programmatic API to create the Nightwatch instance and export the browser API.
Available properties/methods:
.element(<locator>)
- use the Nightwatch .element() API to locate elements in the page;.updateCapabilities({ capabilities })
- used whenautoStartSession
is off in order to update the capabilities at run-time;.launchBrowser()
- used whenautoStartSession
is off in order to start the session and open the browser;.settings
- the Nightwatch settings object;.nightwatch_client
- the Nightwatch (internal) instance.
License
MIT