Cette action utilise le formateur PHPUnit --teamcity
intégré pour ajouter des annotations à vos builds Github Actions.
Pour configurer ces correspondants, ajoutez l'étape suivante à votre fichier YAML de workflow avant d'exécuter PHPUnit avec l'indicateur --teamcity
.
- name : Configure matchers
uses : mheap/phpunit-matcher-action@v1
Voici un exemple de workflow complet (situé dans .github/workflows/phpunit.yml
) qui exécute vos tests et ajoute des annotations pour les échecs
name : PHPUnit
on : [pull_request]
jobs :
build :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- name : Composer dependencies
run : composer install --no-ansi --no-interaction --no-scripts --no-suggest --no-progress --prefer-dist
- name : Configure matchers
uses : mheap/phpunit-matcher-action@v1
- name : Run Tests
run : ./vendor/bin/phpunit --teamcity test
Si vous exécutez vos tests dans un conteneur et que la sortie Teamcity aura un chemin de base différent, vous pouvez le spécifier à l'aide de l'entrée base_path
:
- name : Configure matchers
uses : mheap/phpunit-matcher-action@v1
with :
base_path : /path/to/other/folder
Les comparateurs de problèmes fonctionnent en définissant une expression régulière pour extraire des informations telles que le fichier, le numéro de ligne et la gravité de tous les journaux de sortie. Chaque matcher doit être enregistré auprès de Github Actions en ajoutant ::add-matcher::/path/to/matcher.json
à la sortie.
Cette action génère des expressions régulières basées sur l'espace de travail Github, écrit les fichiers de correspondance, puis les enregistre auprès du programme d'exécution d'action.
Il utilise la sortie Teamcity car elle contient toutes les informations requises (chemin du fichier, message d'échec et numéro de ligne).