Cloud browser testing with Aerokube Browsers in CodeceptJS.
Run WebDriver and Puppeteer tests in cloud browsers provided by Aerokube. Aerokube provides lightning fast and comparable cheap browsers without pain of maintaining own infrastructure. This plugin works with WebDriver and Puppeteer helpers of CodeceptJS.
If you need to host cloud browsers on your own infrastructure consider browsers in Kubernetes with Aerokube Moon
Install this plugin in CodeceptJS project.
npm i @codeceptjs/aerokube-plugin --save-dev
Enable the plugin in codecept.conf.js
// codecept.conf.js config
exports.config = {
helpers: {
// regular Puppeteer config
// or regular WebDriver config
},
// ....
plugins: {
aerokube: {
require: '@codeceptjs/aerokube-plugin',
user: '<username from aerokube>',
password: '<password from aerokube>',
}
}
}
It is recommended to use
dotenv
package to storeusername
andpassword
from Aerokube Browsers. See the config inexample
dir.
To run tests in cloud, enable this plugin:
npx codeceptjs run --steps -p aerokube
To enable aerokube plugin permanently use
enabled: true
.
- Desired capabilities are ignored
We use webdriverio
library to initialize a browser session and obtain DevTool Protocol API credentials.
windowSize
option is used to set initial window size. Not viewport size.- Chrome starting options are ignored.
conf
To try aerokube plugin without a project, use the one provided in this repo inside example
directory.
-
Register at Browsers Aerokube.
-
Run
npm install
to install all depdndencies. -
Create
.env
file with the following contents. Username and password should be obtained from Aerokube Browsers.ACCOUNT=<username from aerokube>
PASSWORD=<password from aerokube>
-
Execute tests :
-
To launch tests in WebDriver npx codeceptjs run -c example --steps
-
To launch tests in Puppeteer
PUPPETEER=true npx codeceptjs run -c example --steps
-