Run Chrome headless tests on CI

Closes #622
This commit is contained in:
Alex Crichton 2018-08-02 22:37:35 -07:00
parent 16c2bee9c5
commit 5d4c135c31
2 changed files with 26 additions and 3 deletions

View File

@ -12,7 +12,12 @@ INSTALL_GECKODRIVER: &INSTALL_GECKODRIVER
| |
curl --retry 5 -LO https://github.com/mozilla/geckodriver/releases/download/v0.21.0/geckodriver-v0.21.0-linux64.tar.gz curl --retry 5 -LO https://github.com/mozilla/geckodriver/releases/download/v0.21.0/geckodriver-v0.21.0-linux64.tar.gz
tar xf geckodriver-v0.21.0-linux64.tar.gz tar xf geckodriver-v0.21.0-linux64.tar.gz
export GECKODRIVER=`pwd`/geckodriver
INSTALL_CHROMEDRIVER: &INSTALL_CHROMEDRIVER
|
curl --retry 5 -LO https://chromedriver.storage.googleapis.com/2.41/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
export CHROMEDRIVER_ARGS=--verbose
DEPLOY_TO_GITHUB: &DEPLOY_TO_GITHUB DEPLOY_TO_GITHUB: &DEPLOY_TO_GITHUB
before_deploy: before_deploy:
@ -78,10 +83,14 @@ matrix:
install: install:
- *INSTALL_NODE_VIA_NVM - *INSTALL_NODE_VIA_NVM
- *INSTALL_GECKODRIVER - *INSTALL_GECKODRIVER
- *INSTALL_CHROMEDRIVER
script: script:
- cargo test -p web-sys --target wasm32-unknown-unknown - export RUST_LOG=wasm_bindgen_test_runner
- CHROMEDRIVER=`pwd`/chromedriver cargo test -p web-sys --target wasm32-unknown-unknown
- GECKODRIVER=`pwd`/geckodriver cargo test -p web-sys --target wasm32-unknown-unknown
addons: addons:
firefox: latest firefox: latest
chrome: stable
if: branch = master if: branch = master
# The `js-sys` crate's tests pass on nightly. # The `js-sys` crate's tests pass on nightly.
@ -90,10 +99,14 @@ matrix:
install: install:
- *INSTALL_NODE_VIA_NVM - *INSTALL_NODE_VIA_NVM
- *INSTALL_GECKODRIVER - *INSTALL_GECKODRIVER
- *INSTALL_CHROMEDRIVER
script: script:
- cargo test -p js-sys --target wasm32-unknown-unknown - export RUST_LOG=wasm_bindgen_test_runner
- CHROMEDRIVER=`pwd`/chromedriver cargo test -p js-sys --target wasm32-unknown-unknown
- GECKODRIVER=`pwd`/geckodriver cargo test -p js-sys --target wasm32-unknown-unknown
addons: addons:
firefox: latest firefox: latest
chrome: stable
if: branch = master if: branch = master
# Tests pass on nightly using yarn # Tests pass on nightly using yarn

View File

@ -300,6 +300,16 @@ impl Client {
} }
let request = json!({ let request = json!({
"desiredCapabilities": { "desiredCapabilities": {
"goog:chromeOptions": {
"args": [
"headless",
// See https://stackoverflow.com/questions/50642308/
// for what this funky `disable-dev-shm-usage`
// option is
"disable-dev-shm-usage",
"no-sandbox",
],
},
} }
}); });
let x: Response = self.post("/session", &request)?; let x: Response = self.post("/session", &request)?;