Just running `npm run selenium` in CI does not work. If WebdriverIO fails, the
job still passes since the last command to run is `killall chromedriver`.
Reusing the script from CI that starts and stops Chromedriver should fix the
problem.
Bug: T179190
Change-Id: If29227263d23a3e4f26e2329dfa13c49f976cf8e
"qunit": "grunt qunit",
"doc": "jsduck",
"postdoc": "grunt copy:jsduck",
- "selenium": "killall -0 chromedriver 2>/dev/null || chromedriver --url-base=/wd/hub --port=4444 & grunt webdriver:test; killall chromedriver"
+ "selenium": "./tests/selenium/selenium.sh"
},
"devDependencies": {
"bluebird": "3.5.1",
--- /dev/null
+#!/usr/bin/env bash
+set -euo pipefail
+chromedriver --url-base=/wd/hub --port=4444 &
+# Make sure it is killed to prevent file descriptors leak
+function kill_chromedriver() {
+ killall chromedriver > /dev/null
+}
+trap kill_chromedriver EXIT
+./node_modules/.bin/grunt webdriver:test