This page is obsolete. It is being retained for archival purposes. It may document extensions or features that are obsolete and/or no longer supported. Do not rely on the information here being up-to-date. See Selenium instead. |
For this example, we will target English Wikipedia at the Beta Cluster. You will need internet access.
Advantages
edit- You do not have to install or learn how to use MediaWiki-Vagrant.
- It will also be reasonably fast.
- MediaWiki core Selenium test run takes about 3 minutes on my machine.
- It takes about 6-7 minutes for selenium-Core Jenkins job to run.
- Debugging failed tests will be easier, since you will see the browser.
Disadvantages
edit- 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.
- While the tests are running the host machine will be hard to use because Chrome will be opening and closing for every test (but not stealing focus).
Clone MediaWiki core
editThere are several ways to clone the MediaWiki core repository (anonymous http, http, ssh). We will use anonymous http since it is the simplest.
$ git clone https://gerrit.wikimedia.org/r/mediawiki/core mediawiki
Cloning into 'core'...
...
Checking out files: 100% (6426/6426), done.
Go to mediawiki
folder
edit
$ cd mediawiki
Install dependencies
editDepending on your operating system, installing dependencies will be different.
Chrome
edit- Install Chrome.
- Download ChromeDriver and put it in a folder included in
PATH
.
Ruby
editInstalling Ruby might be easier, or harder.
- On Linux, please use appropriate package manager.
- On Windows, please use RubyInstaller.
- It should already installed on Mac machines.
- Ruby 2.0 or newer is required.
- Third-party tools like rbenv or RVM are not required.
After installation, check if everything is all right.
$ ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]
Install required Ruby packages (gems).
$ gem install bundler --no-rdoc --no-ri
Fetching: bundler-1.13.6.gem (100%)
Successfully installed bundler-1.13.6
1 gem installed
$ bundle install
...
Use `bundle show [gemname]` to see where a bundled gem is installed.
Create an account at the beta cluster
editYou can skip this step if you already have an account there. If not, create an account at English Wikipedia at the Beta Cluster.
Run the Selenium tests
editPlease replace values of MEDIAWIKI_USER
and MEDIAWIKI_PASSWORD
.
$ MEDIAWIKI_ENVIRONMENT=beta MEDIAWIKI_USER=not-the-real-one MEDIAWIKI_PASSWORD=not-the-real-one bundle exec rake selenium
...
/usr/local/Cellar/ruby/2.4.0/bin/ruby -S bundle exec cucumber tests/browser --tags @chrome
...
20 scenarios (20 passed)
103 steps (103 passed)
3m23.296s