wiki.techinc.nl/tests/phpunit
daniel cd5ea0d5ef Unit tests: simplify setTemporaryHook()
Since we reset all services between test cases, no special effort is
needed to restore the state of the HookContainer.

Bug: T255056
Change-Id: I364f2943d56644f9c7c3acc053e6b585bd8f535c
2020-09-08 21:25:28 +02:00
..
data Write category parent hierarchy when handling categorization 2020-07-31 12:14:13 +02:00
docs
documentation MediaWikiTestCase to MediaWikiIntegrationTestCase 2020-06-30 17:02:22 +01:00
includes HookContainer: fix clear() and scopedRegister(). 2020-09-08 21:07:59 +02:00
integration/includes Add mw-reverted change tag 2020-08-31 13:40:50 +00:00
languages MediaWikiTestCase to MediaWikiIntegrationTestCase 2020-06-30 17:02:22 +01:00
maintenance categoryChangesAsRdf: Add test for categorization 2020-07-31 12:14:11 +02:00
mocks Fix broken PHPDoc comments that don't start with /** 2020-07-23 16:09:41 +00:00
skins
structure Add structure test to verify all PSR-4 directories exist 2020-08-06 12:07:46 -07:00
suites Use parser test file parser from Parsoid 2020-08-17 14:52:08 -04:00
tests Unit tests: simplify setTemporaryHook() 2020-09-08 21:25:28 +02:00
unit HookContainer: fix clear() and scopedRegister(). 2020-09-08 21:07:59 +02:00
bootstrap.maintenance.php MediaWikiTestCase to MediaWikiIntegrationTestCase 2020-06-30 17:02:22 +01:00
bootstrap.php Make phpunit:unit accept extension*.json to populate the classes 2020-08-07 17:45:33 +02:00
HamcrestPHPUnitIntegration.php
LessFileCompilationTest.php
Makefile
MediaWikiCliOptions.php
MediaWikiCoversValidator.php
MediaWikiGroupValidator.php
MediaWikiIntegrationTestCase.php Unit tests: simplify setTemporaryHook() 2020-09-08 21:25:28 +02:00
MediaWikiLangTestCase.php MediaWikiTestCase to MediaWikiIntegrationTestCase 2020-06-30 17:02:22 +01:00
MediaWikiLoggerPHPUnitTestListener.php
MediaWikiPHPUnitCommand.php
MediaWikiPHPUnitResultPrinter.php
MediaWikiPHPUnitTestListener.php Hooks::run() call site migration 2020-05-30 14:23:28 +00:00
MediaWikiTestCaseTrait.php Replace all call_user_func(_array) in all tests 2020-06-06 18:41:20 +02:00
MediaWikiUnitTestCase.php Annotate extensible classes. 2020-07-09 11:07:38 +02:00
phpunit.php
PHPUnit4And6Compat.php
PHPUnit6And8Compat.php
README
ResourceLoaderTestCase.php MediaWikiTestCase to MediaWikiIntegrationTestCase 2020-06-30 17:02:22 +01:00
run-tests.bat
suite.xml Revert "Add a new type of database to the installer from extension" 2020-07-22 16:05:31 -07:00

== MediaWiki PHPUnit Tests ==

The unit and integration tests for MediaWiki are implemented using the PHPUnit testing
framework and require PHPUnit to run.


=== WARNING ===

Some of the integration tests are DESTRUCTIVE and WILL ALTER YOUR WIKI'S CONTENTS.

DO NOT RUN THESE TESTS ON A PRODUCTION SYSTEM OR ON ANY SYSTEM WHERE YOU NEED
TO RETAIN YOUR DATA.


== Installation ==

If you used composer to install MediaWiki's dependencies PHPUnit will already be available, unless
you explicitly specified the --no-dev flag during the install. In this case just run "composer update".

Otherwise follow the installation instructions in the
PHPUnit Manual at:

  https://phpunit.de/manual/current/en/installation.html


== Running tests ==

The tests are run from your operating system's command line.

Ensure that you are in the tests/phpunit directory of your MediaWiki
installation.


On Unix-like operating systems, the tests runs are controlled with a makefile.
Run command:

  make help

for a full list of options for running tests.


On Windows-family operating systems, run the 'run-tests.bat' batch file.


=== Writing tests ===

A guide to writing PHP unit tests for MediaWiki can be found at:

	https://www.mediawiki.org/wiki/Manual:PHP_unit_testing