Extension:MWUnit/Risky and skipped tests

MWUnit performs additional checks when it performs tests. These checks ensure the validity of the tests and inform the user about possibly invalid tests or misconfigurations.

Risky testsEdit

Invalid @covers annotationEdit

MWUnit can be configured, through the $wgMWUnitStrictCoverage configuration parameter, to be strict about invalid/untruthful @covers annotations. When enabled, a test will be marked as risky if the template a test @covers is not used directly, or indirectly, in a test case.

Useless testsEdit

By default, MWUnit is strict about tests that do not perform any assertions. A test that does not perform any assertions will be marked as risky.

Invalid assertionsEdit

MWUnit is always strict about tests with invalid assertions. An assertion is invalid when it contains too few parameters or parameters of an incorrect type. A test that has one or more invalid assertions will be marked as risky.

A test will not be marked as invalid when an assertion has too many parameters.

Mocked covers templateEdit

A test will be marked as risky when the template that test should cover is mocked.

Skipped testsEdit

Tests marked as skipped are never run, because they are either broken or marked with @skip.

Invalid contextEdit

MWUnit is always strict about tests using an invalid context annotation. The context annotation must either be empty, "canonical" or "user". A test that has an invalid context annotation will be skipped.

Invalid userEdit

MWUnit requires the user specified in @user to be an existing user. If the user specified does not exist, the test will be skipped.

Missing permissions for user mockEdit

A test will be skipped when it is required to be run as another user, but running tests as another user is disabled or disallowed.

Missing required extensionsEdit

A test will be skipped if one or more extensions specified through @requires is missing.

See alsoEdit