Tests de l'analyseur syntaxique

This page is a translated version of the page Parser tests and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎polski • ‎português • ‎português do Brasil • ‎中文 • ‎日本語

Chaque cas de test de l'analyseur spécifie le texte wiki d'entrée et la sortie HTML, pour confirmer que les choses se déroulent comme on les attend. La sortie courante est comparée au résultat souhaité, et ainsi les cas de test de l'analyseur (connus également sous le nom de tests de l'analyseur) peuvent être utiles pour pointer les régressions.

Les cas de test de l'analyseur sont rangés dans tests/parser/parserTests.txt. Les extensions doivent placer leurs tests dans un répertoire tests/parser/.

Vous pouvez à la fois faire les tests en utilisant la suite de tests unitaires de php, ou bien utiliser parserTests.php de manière indépendante -- de sorte à ce qu'un test en échec de l'analyseur puisse déclencher une erreur de test Jenkins.

Syntaxe et exécution

Version 2 format
Starting with 1.35, parser tests are required to be in the Version 2 format. Specifying version 2 indicates that the tests are ready to be run in "tidy" mode (See T249138).
To indicate your parser tests are run in version 2 format, the first line in your parser test file must be !! Version 2

La syntaxe est la suivante :

!! Version 2
!! test
Simple paragraph
!! config
wgRestrictDisplayTitle=false
!! input
This is a simple paragraph.
!! result
<p>This is a simple paragraph.
</p>
!! end

La section config peut être omise. Si vous spécifiez les paramètres de configuration ici, assurez-vous qu'il n'y ait aucun espace entre les expressions parce que l'espace n'est pas supprimé par le lanceur de tests.

Pour créer un nouvel article la syntaxe est la suivante :

!! article
Template:Simple template
!! text
A ''simple'' template.
!! endarticle

Pour être sûr que la balise d'extension tag1 soit chargée, ajoutez au début du fichier :

!! hooks
tag1
!! endhooks

Les extensions qui enregistrent leurs tests dans tests/parser/ et qui utilisent extension.json will auront leurs tests d'analyseur automatiquement activés. Les extensions qui utilisent l'ancien système de chargement des extensions, peuvent utiliser :

$wgParserTestFiles[] = __DIR__ . "/myParserTests.txt";

Pour exécuter les tests de l'analyseur, allez dans le répertoire de votre installation locale MediaWiki et exécutez les instructions suivantes à partir de la ligne de commande :

php tests/parser/parserTests.php
Avant MediaWiki 1.28, ce fichier était mis dans tests/parserTests.php.

Pour exécuter les tests juste pour un seul fichier, utilisez le paramètre --file=... . Voir --help pour les autres paramètres.

php tests/parser/parserTests.php --file=extensions/Kartographer/tests/parser/parserTests.txt

Voir aussi