[Engineering] Migration of browsertests* Jenkins jobs to selenium* jobs

Željko Filipin zfilipin at wikimedia.org
Mon May 2 15:32:46 UTC 2016


Hi,

We have a set of Jenkins jobs that run daily and execute Ruby+Selenium
tests. Recently, the way we run those jobs reached a point where we had to
do some serious refactoring[0]. The old jobs were named browsertests*[1],
the new are named selenium*[2].

Changes:

#1 The creation and deletion of jobs have been made simpler. Each
repository now
has only a single job defined in Jenkins. It is a multi configuration job
that spawns one or more child job based on a configuration in each
repository: `tests/browser/ci.yml`[3].  The main job will then spawn child
jobs based on its content.

#2 Jobs execute `selenium` Rake target (`bundle exec rake selenium`). It is
defined in the Rakefile of each repository and load the Rake task from
mediawiki_selenium
Ruby gem version 1.7.0[4].

What does it mean for you?

At this point, no action in needed. All required changes have already been
made. When the selenium* job passed for a repository, I have already
deleted the browsertests* legacy one. There is still a few repositories
(Flow, MobileFrontend, MultimediaViewer, Wikidata) that need to be moved,
but we are working on that.

If you have any questions, let me know.

Željko
--
0: https://phabricator.wikimedia.org/T128190
1: https://integration.wikimedia.org/ci/view/BrowserTests/view/-Dashboard/
2: https://integration.wikimedia.org/ci/view/Selenium/
3: https://www.mediawiki.org/wiki/Continuous_integration/Entry_points#ci.yml
4: https://www.mediawiki.org/wiki/Continuous_integration/Entry_points#Rake
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.wikimedia.org/pipermail/engineering/attachments/20160502/4f965b2d/attachment.html>


More information about the Engineering mailing list