MediaWiki testing
As with any other piece of software, MediaWiki needs testing by humans and by automated scripts to ensure quality.
Contents |
[edit] Automated testing
Automated testing of MediaWiki is hard. Much of the functionality depends on Web interaction, and the output is HTML, which is tough to evaluate for correctness.
[edit] Parser tests
There is a parser test suite in the maintenance directory; run 'make test' or fiddle around with running parserTests.php directly. This runs a bunch of wikitext samples through the parser with a known set of settings and ensures that they come out to the expected results. Newly discovered problems with the parser should be added as test cases to parserTests.txt.
[edit] Unit tests
A highly incomplete set of unit tests using PHPUnit is being added in the tests/ subdirectory. These test various functions in relative isolation. Coverage is limited so far.
[edit] Unicode tests
The Unicode normalization library in includes/normal has its own test suite, including a run of the conformance tests, some custom unit tests, a random input tester to compare against the C++ module. The main test suite can be run via 'make test'; this will fetch some source data files from the net (requires wget) and run the conformance and unit tests.
[edit] Manual testing
Interactive behavior is not yet subject to automated tests, so most testing of the UI is going to be manual. The MediaWiki test script contains instructions for doing a complete manual test of the software.