Selenium framework should support multiple test runners (Mocha, Cucumber...) and assertion libraries (Assert, Chai...). So far all dependencies were managed from mediawiki core, but that has serious drawbacks (as @Krinkle points in T179190#4173431).
I have talked with @hashar and we have agreed that the way forward is to modify #quibble.
Workflow:
- clone mediawiki core
- clone extension(s)/skin(s)
- find all `wdio.conf.js` files
- cd into each extension/skin with `wdio.conf.js` file
- run `npm install`
- run `npm run selenium-test`
Running multiple `npm install` might slow #quibble down, so speeding up that part will be important. In order for the last step to work, each extension/skin has to have `selenium-test` script in `package.json`, but that will be resolved with T199113.