Référence des commandes
Avertissement
Initialement, cet outil a été développé pour notre usage interne. Il est fourni ici à titre d'exemple. Il est fourni tel quel, sans aucune garantie ni assurance. Nous ne fournissons pas de support utilisateur pour cet outil, et son comportement ou sa compatibilité peuvent changer dans les versions ultérieures de SquashTM sans préavis.
Le parseur de résultats de tests automatisés fournit un outil en ligne de commande (CLI) qui traite les rapports d'exécution de tests et envoie les résultats à SquashTM. L'outil CLI accepte des rapports de tests XML de divers frameworks de tests, applique les règles de parsing configurables et produit des résultats JSON structurés.
La commande principale est parse-reports. Elle gère l'ensemble du processus : parsing des rapports de tests, transformation des données selon la configuration, et envoi optionnel des résultats directement à l'instance SquashTM.
Fonctionnalités principales :
- Parsing d'un ou plusieurs rapports XML à l'aide des patterns
- Compatibilité avec plusieurs frameworks de tests (Robot Framework, Surefire, etc.)
- Options de sortie flexibles : sauvegarde dans un fichier, ajout à des résultats existants ou envoi direct à SquashTM
- Règles de parsing personnalisables via des fichiers de configuration
- Modes intégrés de débogage et de simulation (
dry-run) pour le diagnostic
Les sections suivantes détaillent la syntaxe des commandes, les paramètres et les cas d'utilisation courants.
Syntaxe de la commande
La commande parse-reports analyse un ou plusieurs rapports d'exécution, crée une sortie JSON avec les résultats de l'analyse, puis écrit cette sortie dans un fichier et/ou l'envoie à l'API.
Voici la syntaxe de base de la commande parse-reports :
parse-reports --report {chemin du fichier} --technology {technologie de test} [OPTIONS]
Info
Les paramètres --report et --technology sont obligatoires pour le parsing des rapports, mais ils doivent être omis pour envoyer les résultats à partir d'un fichier existant avec --post {file}. Consultez la section "Envoi des résultats vers SquashTM" pour plus de détails.
La liste complète des paramètres est également disponible via l'aide intégrée :
parse-reports --help
Référence des paramètres
La commande parse-reports présente des paramètres liés au parsing des rapports, à la configuration de la sortie et à l'envoi des résultats.
Paramètres de parsing
--reportou-r: chemin vers le ou les fichiers de rapport XML à analyser. Prend en charge les patterns (ex. :"reports/*.xml"). Obligatoire pour le parsing.--technologyou-t: technologie de test utilisée (ex. :robotframework,surefire). Obligatoire pour le parsing.--configou-c: chemin vers un fichier de configuration personnalisé. Optionnel : si non spécifié, la configuration par défaut sera utilisée.
Paramètres de sortie
Les paramètres de sortie permettent de configurer la destination et le format du résultat du parsing (fichier ou stdout).
--outputou-o: chemin du fichier JSON de sortie, défini à./results.jsonsi aucun chemin n'est spécifié. Mutuellement exclusif avec--append-to.--append-toou-a: ajoute les résultats à un fichier JSON existant. Utile pour regrouper plusieurs exécutions de tests dans un même fichier JSON. Le fichier sera créé s'il n'existe pas. Mutuellement exclusif avec--output.--dry-run: affiche les résultats du parsing dans la console puis sort sans les enregistrer ni envoyer.--debug: met le niveau de logs du parseur surDEBUG.
Warning
--output écrasera les fichiers existants sans avertissement. Si vous souhaitez cumuler les résultats de plusieurs exécutions de parse-reports, utilisez l'option --append-to.
Paramètres d'envoi des résultats
--post,--publishou-p: envoie les résultats vers SquashTM. Nécessite--iteration.--iterationou-i: ID de l'itération vers laquelle les résultats seront envoyés. Obligatoire avec--post.--url: URL de l'instance SquashTM au formathost:port(ex. :http://127.0.0.1:8080). Utilisé avec--post, alternative à la variable d'environnementSQUASH_PARSER_POST_URL.--token: jeton d'authentification. Utilisé avec--post, alternative à la variable d'environnementSQUASH_PARSER_POST_TOKEN.
Traitement de plusieurs rapports
La commande parse-reports peut parser plusieurs rapports d'exécution et cumuler les résultats. L'option --report prend en charge les patterns. La commande suivante va parser tous les fichiers .xml dans le répertoire ./reports en utilisant le parseur par défaut pour la technologie cypress, fusionner les résultats du parsing en une seule liste et les enregistrer dans le fichier cypress_all.json.
parse-reports -r "reports/*.xml" -t cypress -o cypress_all.json
Warning
Les patterns utilisés avec --report doivent être correctement mis entre guillemets pour éviter leur interprétation par les shells Unix. Sous Windows, dans cmd.exe, les jokers (* et ?) sont transmis tel quels, il n'est donc pas nécessaire d'utiliser des guillemets. En revanche, dans PowerShell, les jokers peuvent être interprétés comme dans les shells Unix, il faut donc prêter attention à l'utilisation des guillemets.
Vous pouvez également utiliser l'option --append-to pour combiner les résultats de plusieurs exécutions dans un seul fichier JSON. La séquence de commandes suivante va analyser les fichiers output.xml et report.xml en utilisant les parseurs respectifs de la configuration par défaut. La première commande va créer le fichier accumulated.json avec les résultats du parsing de output.xml, et la seconde y ajoutera les résultats du parsing de report.xml :
parse-reports -r robotframework/tests/output.xml -t robotframework --append-to accumulated.json
parse-reports -r playwright/tests/report.xml -t playwright --append-to accumulated.json
Envoi des résultats vers SquashTM
Les résultats générés peuvent être envoyés vers l'API de SquashTM à l'aide des options --post et --iteration. L'URL du point d'accès et les informations d'authentification peuvent être fournies depuis la ligne de commande ou configurées via des variables d'environnement. Le parseur vérifie d'abord la présence des paramètres de l'API dans l'environnement d'exécution, puis se rabat sur les options de la ligne de commande.
Deux variables d'environnement peuvent être utilisées pour définir les paramètres de l'API:
SQUASH_PARSER_POST_URL: URL de l'instance SquashTM au formathost:port, par exemplehttp://127.0.0.1:8080.SQUASH_PARSER_POST_TOKEN: jeton d'authentification API.
Vous pouvez également spécifier ces deux paramètres directement en ligne de commande à l'aide des options --url et --token.
Il existe deux manières d'envoyer les résultats de parsing : suite à l'exécution de la commande, ou à partir d'un fichier existant.
Envoi direct. Pour envoyer les résultats directement, en supposant que l'URL et le jeton API sont déjà fournis via des variables d'environnement, ajoutez simplement l'option --post dans la ligne de commande et indiquez l'ID de l'itération vers laquelle les résultats de parsing doivent être envoyés.
parse-reports -r output.xml -t robotframework --post --iteration 123
Envoi depuis un fichier. Pour envoyer les résultats depuis un fichier existant, ajoutez à l'option --post le chemin de ce fichier. Cette approche peut être utile pour envoyer des résultats d'exécution cumulés vers l'API.
parse-reports -r robotframework/tests/output.xml -t robotframework --append-to accumulated.json
parse-reports -r playwright/tests/report.xml -t playwright --append-to accumulated.json
parse-reports --post accumulated.json --iteration 123
Avertissement
Lors de l'envoi de résultats à partir d'un fichier existant, omettez les options --report et --technology. Lorsqu'elles sont présentes, la commande est interprétée comme une opération de parsing ordinaire, et le chemin du fichier de résultats fourni est ignoré.