Jump to content

Submissions/Testing for MediaWiki

From Wikimania 2011 • Haifa, Israel

Presentation Media

30px No slides known
(please upload your slides and/or add it)

Review no.


Title of the submission

Testing for MediaWiki

Type of submission (workshop, tutorial, panel, presentation)


Author of the submission
  • Mark Hershberger
  • Markus Glaser
  • Priyanka Dhanda
  • Trevor Parscal
  • Timo Tijhof
  • Ryan Lane
E-mail address or username (if username, please confirm email address in Special:Preferences)
  • Mark Hershberger: mhershberger@wikimeris.org
  • Markus Glaser: glaser@hallowelt.biz
  • Priyanka Dhanda: pdhanda@wikimedia.org
  • Trevor Parscal: tparscal@wikimedia.org
  • Timo Tijhof: ttijhof@wikimedia.org
Country of origin


Affiliation, if any (organization, company etc.)

Wikimedia Foundation

Personal homepage or blog
Abstract (please use no less than 300 words to describe your proposal)

One of the things that the MediaWiki software lacks and would benefit greatly from is a robust and reliable test infrastructure. This panel would discuss feasible ways to achieve better test coverage of the software and how we can encourage test driven development. These are some of the things that we hope to achieve with reliable tests and better code coverage:

  • Enable developers to make core changes with more confidence.
  • Extension writers can run a set of smoke tests to make sure they have not broken something in core.
  • Reduce the likelihood of broken code being deployed
  • Better quality code.

This panel will consist of MediaWiki developers who have all, at some point, worked on the existing test infrastructure. We will start with a few brief presentations on the following topics:

  • Writing testable code, testing best practices and the benefits and pitfalls of coding with testing in mind.
  • How to write a unit test for MediaWiki's PHP backend using our existing PHPunit framework.
  • How to run PHPunit and some of its nice features.
  • How to write a unit test for MediaWiki's JS library. Existing efforts to test the growing amount of Javascript in our codebase, and what we want to do going forward (continuous integration for JavaScript, distributed to all the different browsers we support)
  • Browser testing using Selenium. Status of the existing framework and future plans.
  • Running automated tests using phpUnderControl and Selenium.

This will be followed by a Q&A session where we hope to gain some insight into the following:

  • What works well at present.
  • Things we have we done in the past that worked and that developers adopted quickly.
  • Are there any low hanging fruit that will make it very easy for developers to write and run tests more regularly?
  • How to best achieve our long term goals
    • Continuous automated tests.
    • A test cluster where we can run tests on various configurations, platforms and browsers.
  • How to engage with developers who are currently writing their own test infrastructure for MediaWiki.

We’re hoping that part of this session will be informal and interactive. We would like to hear from people who have experience with similar projects in the past or who have suggestions for us.

Track (People and Community/Knowledge and Collaboration/Infrastructure)


Will you attend Wikimania if your submission is not accepted?

Probably not

Slides or further information (optional)

Will provide later

Interested attendees

If you are interested in attending this session, please sign with your username below. This will help reviewers to decide which sessions are of high interest. Sign with four tildes. (~~~~).

  1. Werdna
  2. Vibhijain 10:51, 5 May 2011 (UTC)[reply]
  3. Jaime Penagos 15:20, 17 May 2011 (UTC)[reply]
  4. Amir E. Aharoni
  5. Ruslik 08:58, 25 July 2011 (UTC)[reply]
  6. Krinkle 20:26, 31 July 2011 (UTC)[reply]
  7. RajeshPandey 07:26, 5 August 2011 (UTC)[reply]