JS client library to send E2E report data to a heimdall.io dashboard service for visualization.
Currently provides integrations for these UI testing frameworks:
npm i bifrost-io --save
module.exports = {
ownerkey: 'YOUR KEY HERE',
dashboardHost: 'YOUR DASHBOARD HOST NAME HERE'
}
Alternatively you could provide key and host on a per run basis on the command line:
cross-env OWNER_KEY=YOUR_KEY DASHBOARD_HOST=YOUR_HOST codeceptjs run
NOTE that bifrost-io currently works ONLY with the WebDriverIO backend.
"helpers": {
"WebDriverIO": {
"url": "http://localhost",
...
},
"BifrostHelper": {
"require": "bifrost-io/codeceptjs/dashboard_helper.js"
},
...
},
codeceptjs run
After the test run you should see this line in the output
Go here to see reports:
http://YOUR_DASHBOARD_HOST:4000/tests?ownerkey=YOUR_KEY&project=YOUR_PROJECT&runid=H1RgPInCM
Just click on the link and view your reports
For a working codeceptjs example project please take a look at the codeceptjs demo project.
CodeceptJS lets you organize your test files in a folder hierarchy. You should use this to categorize your tests. E. g. you could
The folder hierarchy can then be used in test reports to generate a table of contents for tests.
Since you usually do not want to include the test base folder as a category, you can remove that by using the cutPrefix config parameter.
BifrostHelper: {
require: "bifrost-io/codeceptjs/dashboard_helper.js",
cutPrefix: "/features"
},
You should specify NODE_ENV when running your tests. The following environment names are supported:
In order to run your web browser tests on a different device (using chrome emulation mode)
# run on iPhone
cross-env TEST_DEVICE="iPhone 6" codeceptjs run
# Run on iPad
cross-env TEST_DEVICE="iPad Pro" codeceptjs run
# Run on Google Pixel 2
cross-env TEST_DEVICE="Pixel 2" codeceptjs run
For a list of availabe devices see https://github.com/AndreyBelym/chrome-emulated-devices-list/blob/HEAD/devices.md