- You do not have to install or learn how to use a local development environment like MediaWiki-Docker.
- It will be reasonably fast. MediaWiki Core Selenium test run takes about 5 minutes on my machine. A lot of tests fail. Subset of passing tests takes about 1 minute. (As of September 2019.)
- Debugging failed tests will be easier, since you are able to see the browser. See Selenium/How-to/Make the browser visible for more information.
- You will need internet connection while running the tests.
- The tests will be slower since the target machine is not local.
- You will have to install Selenium and it's dependencies on your machine.
Clone MediaWiki Core
There are several ways to clone the MediaWiki Core (
ssh). In this example, will use
anonymous http since it is the simplest. You can skip this step if you already have MediaWiki Core cloned.
git clone "https://gerrit.wikimedia.org/r/mediawiki/core"
Go to MediaWiki Core folder
Depending on your operating system, installing dependencies will be different.
- Install Node.js and npm.
- Install required npm packages.
DISPLAY environment variable is set with
echo $DISPLAY. If there's no output, that's good. (The default on macOS). If you get any output, for example
:0 (the default on Ubuntu Linux), unset the variable with
Ensure the following environment variables are set. Either run this manually from the terminal or, to make it easier for next time, set them from shell configuration file (
~/.zshrc...) which means the variables are always available from any terminal session:
# Target Beta cluster export MW_SERVER=https://en.wikipedia.beta.wmflabs.org export MW_SCRIPT_PATH=/w export MEDIAWIKI_USER=mediawiki_user export MEDIAWIKI_PASSWORD=mediawiki_password
If you prefer, you can create an
.env file instead (in MediaWiki Core folder), with this contents.
# Target Beta cluster MW_SERVER=https://en.wikipedia.beta.wmflabs.org MW_SCRIPT_PATH=/w MEDIAWIKI_USER=mediawiki_user MEDIAWIKI_PASSWORD=mediawiki_password
mediawiki_password with your username and password.
Run the Selenium tests
Run all tests.
npm run selenium-test
Please note that a lot of tests will fail. Tests are written for targeting MediaWiki on a Jenkins worker machine and MediaWiki-Vagrant virtual machine.
If you would like to run a subset of passing tests, run these commands in separate terminal windows or tabs.
npm run selenium-daily