Make running Selenium tests using Sauce Labs easy
authorŽeljko Filipin <zeljko.filipin@gmail.com>
Fri, 31 Mar 2017 11:47:17 +0000 (13:47 +0200)
committerZfilipin <zfilipin@wikimedia.org>
Thu, 25 May 2017 15:57:04 +0000 (15:57 +0000)
If SAUCE_USERNAME and SAUCE_ACCESS_KEY environment variables are not
defined, tests are run with `npm run selenium`, as usual.

https://www.mediawiki.org/wiki/Selenium/Node.js/Inside_MediaWiki-Vagrant
https://www.mediawiki.org/wiki/Selenium/Node.js/Target_MediaWiki-Vagrant

If the environment variables are defined, to run tests using Sauce Labs
and targeting Beta Cluster, run this:

```
export SAUCE_USERNAME=***
export SAUCE_ACCESS_KEY=***
export MW_SERVER=https://en.wikipedia.beta.wmflabs.org
./node_modules/.bin/wdio tests/selenium/wdio.conf.js
```

https://www.mediawiki.org/wiki/Selenium/Node.js/Target_beta_cluster_using_Sauce_Labs

Bug: T139740
Change-Id: I622d9c55ae595ab772e733388d209623e3a9f81e

package.json
tests/selenium/wdio.conf.js

index ee42b07..66c13cd 100644 (file)
@@ -28,6 +28,7 @@
     "stylelint-config-wikimedia": "0.4.1",
     "wdio-junit-reporter": "0.2.0",
     "wdio-mocha-framework": "0.5.8",
+    "wdio-sauce-service": "^0.3.1",
     "wdio-spec-reporter": "0.0.5",
     "webdriverio": "4.6.2"
   }
index f132899..adbd8c3 100644 (file)
@@ -30,6 +30,14 @@ exports.config = {
                'vagrant' :
                process.env.MEDIAWIKI_PASSWORD,
        //
+       // ======
+       // Sauce Labs
+       // ======
+       //
+       services: [ 'sauce' ],
+       user: process.env.SAUCE_USERNAME,
+       key: process.env.SAUCE_ACCESS_KEY,
+       //
        // ==================
        // Specify Test Files
        // ==================