Integrate browserstack into ci

This commit is contained in:
Chi Vinh Le
2017-10-17 21:38:50 +07:00
parent 30fe43624f
commit 427c6e10a4
5 changed files with 57 additions and 4 deletions
+1 -1
View File
@@ -47,7 +47,7 @@ test:
override:
# Run the tests using the junit reporter.
- MOCHA_FILE=$CIRCLE_TEST_REPORTS/junit/test-results.xml MOCHA_REPORTER=mocha-junit-reporter yarn test
- yarn e2e -- --env chrome-headless
- yarn e2e-ci
deployment:
release:
+31 -2
View File
@@ -18,14 +18,43 @@ const nightwatch_config = {
default: {
launch_url: ROOT_URL,
desiredCapabilities: {
browser: 'chrome',
'browserstack.user': process.env.BROWSERSTACK_USER || 'coralproject2',
'browserstack.key': process.env.BROWSERSTACK_KEY,
'browserstack.local': true,
'browserstack.debug': true,
'browserstack.networkLogs': true,
'browser': 'chrome',
}
}
},
chrome: {
desiredCapabilities: {
browser: 'chrome',
},
},
firefox: {
desiredCapabilities: {
browser: 'firefox',
},
},
safari: {
desiredCapabilities: {
browser: 'safari',
},
},
ie: {
desiredCapabilities: {
browser: 'internet explorer',
// Windows 10 seem to have troubles with the browserstackLocal tunnel (11.17.17).
os: 'Windows',
os_version: '8.1',
},
},
edge: {
desiredCapabilities: {
browser: 'edge',
},
},
}
};
+2 -1
View File
@@ -15,7 +15,8 @@
"lint": "yamllint locales/*.yml && eslint --ext=.js --ext=.json bin/* .",
"lint-fix": "yarn lint --fix",
"jest-watch": "TEST_MODE=unit NODE_ENV=test jest --watch",
"e2e-browserstack": "NODE_ENV=test ./scripts/e2e.js --config nightwatch-browserstack.conf.js",
"e2e-ci": "./scripts/e2e-ci.sh",
"e2e-browserstack": "NODE_ENV=test ./scripts/e2e-browserstack.js --config nightwatch-browserstack.conf.js",
"pree2e": "selenium-standalone install",
"e2e": "NODE_ENV=test nightwatch",
"test": "TEST_MODE=unit NODE_ENV=test jest && TEST_MODE=unit NODE_ENV=test mocha -R ${MOCHA_REPORTER:-spec}",
+23
View File
@@ -0,0 +1,23 @@
#!/bin/bash
set -e
if [[ -z "${BROWSERSTACK_KEY}" ]]; then
# When browserstack is not available test locally using chrome headless.
yarn e2e -- --env chrome-headless
else
# Test using browserstack.
yarn e2e-browserstack -- --env chrome
sleep 2
yarn e2e-browserstack -- --env firefox
sleep 2
yarn e2e-browserstack -- --env safari
sleep 2
yarn e2e-browserstack -- --env ie
sleep 2
yarn e2e-browserstack -- --env edge
fi