Wikiation Extension Testing Environment

From MediaWiki extension testing

Jump to: navigation, search

The Wikiation Extension Testing Environment was initially developed by Wikiation for the purpose of determining what MediaWiki extensions Wikiation could support as a hosting company for its customers. A testing environment however has a much bigger potential and for this reason it is being developed in a way that makes this a test environment for developers as well.

Contents

Philosophy

We have created something that works and that needs refinement. We will scratch our own itch, and we hope that you will enjoy our environment and make it your own as well.

What does the environment consist off

The environment consists of software development and a testing environment.

  • The software is developed mainly in python
  • The test environment consists of a limited number of virtual machines.

Software

Much of testing is repetitive work and for this reason brain dead repetitions need automating. It is easy to test if MediaWiki is alive for instance. You do not want to wait for an installation to install waiting to type in the next installation command. You do not want to perform a test where you know what the result should look like when it is not what you are directly working on.

Environment

MediaWiki is run on many platforms, platforms that may offer restrictions. When your ASP does not allow you to upgrade any of the LAMP applications, you are stuck, but some extensions may still work. When you have installed a set of extensions, will this other nifty extension also work? What does it take to upgrade my extension to a next release of MediaWiki, will it still work?

These are the sort of questions that arise when you run MediaWiki as a platform. The answers are not obvious. They only become clear when appropriate tests are available and when tests are run to refine the answer.

The current testing environment

Wikiation made a number of virtual servers available for extension testing. They all use the same clean machine, but in order to be able to test other configurations as well, there is a need for ways in which we can cycle through different clean machines and do the testing that will provide you with the answers to your questions.

Systems involved

There are many scenarios where different systems can be involved.

  • The system where MediaWiki and extensions are installed
  • The Wikimedia Foundation's SVN for the environment software and for MediaWiki
  • Another system where software is available for testing in Subversion
  • The system where the test-cases are run. Particularly the Wikiation test can be run anywhere
  • The system where the results of the tests are published
Personal tools