Aller au contenu

Exécuter des cas de test automatisés

Lancement des tests automatisés

Principe

Les tests automatisés sont facilement identifiables dans le plan d'exécution d'une itération ou d'une suite de tests grâce à l'icône Exécution d'un test automatisé affichée dans la colonne Mode.

Il est possible d'exécuter tous les cas de tests automatisés du plan d'exécution, ou une sélection de ceux-ci, en cliquant sur le bouton Lancer les tests automatisés situé en haut à droite du plan d'exécution :

Exécution de tests automatisés

Il est également possible d'exécuter un seul cas de test automatisé en cliquant sur le sous-menu Exécution automatique :

Exécution d'un test automatisé

Lorsque l'exécution automatique démarre, une pop-up de supervision de l'exécution des tests s'affiche, et une suite automatisée est créée.

Selon le type de serveur d'exécution, différentes actions sont possibles dans la pop-up de supervision.

Statuts des environnements d'exécution

Statuts des environnements d'exécution

Pour en savoir plus sur les statuts des environnements d'exécution, consultez la page get channels sur la documentation OpenTestFactory.

Un récapitulatif des environnements d'exécution et de leurs statuts est visible dans la capsule Environnements des espaces Itération et Suite des campagnes de tests dès lors que leur plan d'exécution contient des tests automatisés qui seront exécutés par un serveur Squash Orchestrator.

Plan de test avec capsule des environnements d'exécution

Les différents statuts possibles sont représentés par un logo et une infobulle :

Statut global Logo et infobulle Exemples de causes possibles
Valide Tous les orchestrateurs liés au plan de test sont joignables :
- Ils possèdent un jeton valide, soit au niveau du projet, soit au niveau du serveur d'exécution automatisée.
- Les URLs renseignées dans Squash TM sont correctes et ont permis de joindre les orchestrateurs.
Erreur Tous les orchestrateurs liés au plan de test sont injoignables :
- Les URLs renseignées dans l'espace Administration> > Serveurs > Serveurs d'exécution automatisée ne permettent pas de joindre les orchestrateurs ou sont incorrectes.
- Les jetons renseignés (côté projet, ou côté serveur) ne sont pas valides.
- Les orchestrateurs sont arrêtés.
Avertissement Le jeton d'un ou de plusieurs orchestrateurs n'est pas renseigné (ni au niveau projet, ni au niveau serveur automatisé).
Le plan de test est lié à plusieurs projets et au moins un orchestrateur lié au plan de test est injoignable.

Si des environnements d'exécution sont trouvés, il est possible de cliquer sur la capsule pour afficher une pop-up contenant des détails sur les environnements d'exécution (nom, tags, statut).

Pop-up de détails de la capsule des environnements d'exécution

Pour le cas particulier d'une suite de tests automatisés avec des tests provenant de projets différents et rattachés soit à des orchestrateurs différents, soit à différents namespaces de l'orchestrateur, la pop-up contient le détail des environnements d'exécution par projet :

Pop-up de détails de la capsule des environnements d'exécution multi-projets

Lancement avec Squash Orchestrator

Authentification par token

L'exécution des tests automatisés depuis Squash TM utilise des jetons d'API temporaires. Par conséquent, la propriété squash.rest-api.jwt.secret est requise pour pouvoir exécuter des tests automatisés avec Squash Orchestrator depuis Squash TM.

Lors du lancement des tests avec un serveur d'exécution automatisée Squash Orchestrator, la pop-up de supervision de l'exécution automatique des tests affiche la liste des tests à automatiser.

Depuis cette pop-up, il est également possible de consulter les tags d'environnement avec lesquels seront exécutés les tests.
Par défaut, les tags d'environnement sélectionnés sont ceux définis au niveau du projet dans lequel se trouvent les cas de test. Néanmoins, l'utilisateur peut sélectionner d'autres valeurs qui s'appliqueront uniquement à cette exécution.

La section Environnements disponibles lui permet de vérifier que la combinaison sélectionnée correspond à au moins un environnement d'exécution disponible. Si ce n'est pas le cas, les tests ne peuvent pas être lancés.

Si des variables d'environnement sont associées au serveur d'exécution automatisée, elles s'affichent dans cette pop-up avec par défaut, la valeur définie au niveau du projet dans lequel se trouve le cas de test. Il est possible de modifier cette valeur uniquement pour l'exécution à venir.

Pop-up de supervision avant lancement

Lorsqu'une suite de tests automatisés est exécutée avec Squash Orchestrator, une barre de progression indique l'avancement des exécutions des tests dans la pop-up de supervision. L'UUID du ou des workflows en charge de l'exécution sur l'orchestrateur sont également affichés.

Pop-up de supervision après lancement

Focus

La fermeture de la pop-up de supervision est définitive. Si des exécutions automatiques sont en cours, celles-ci se poursuivent néanmoins mais sans possibilité d'en voir l'avancement en temps réel.

Ordre d'exécution des tests

Le seul ordre assuré par Squash est que, pour un dépôt Git donné dans une itération/suite de tests donnée, les tests seront exécutés dans l'ordre défini dans Squash TM.
Si une itération/suite de tests contient des tests automatisés appartenant à plusieurs dépôts Git, l'ordre d'exécution des tests d'un dépôt par rapport à l'exécution des tests d'un autre dépôt est indéfini.
Si plusieurs itérations/suites de tests sont lancées depuis Squash TM (resp. le pipeline CI/CD), l'ordre d'exécution des tests d'une itération/suite par rapport à l'exécution des tests d'une autre itération/suite est indéfini. (Sauf dans le cas simpliste où un environnement d'exécution adéquat est disponible et la première suite/itération a pu démarrer avant que l'utilisateur Squash TM – resp. le pipeline CI/CD – en lance une autre.)

Lancement avec Squash TF

Lorsque le test automatisé est exécuté avec Squash TF, une barre de progression indique l'avancement de l'exécution des tests dans la pop-up de supervision.

Pop-up de supervision de l'exécution automatique des tests

Info

Dans le cadre d'une exécution avec un serveur d'exécution automatisée Squash TF de type Jenkins, si ce dernier est configuré pour laisser le choix du serveur d'exécution, une pop-up permettant de choisir le serveur apparaît avant le démarrage de l'exécution.

Les suites de tests automatisées

Une suite automatisée est systématiquement créée après le lancement des tests automatisés. La suite est créée au niveau de l'itération et de la suite de tests. Depuis cette suite automatisée, il est possible de consulter :

  • le statut d'exécution global de la suite automatisée (qui dépend du statut des exécutions associées) ;
  • le détail des exécutions ;
  • les rapports de l'ensemble des exécutions de la suite automatisée.

Suite automatisée