Release notes de Squash TM 8.X
Tests automatisés avec Squash Orchestrator
- La mise à jour de Squash TM vers la version 8.x nécessite également la mise à jour de Squash Orchestrator vers la version 4.14.
- 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.
Squash TM 8.0.0
Sortie le 29/10/2024
Évolutions
-
Exigences :
- Ajout du nombre de cas de test associés aux exigences classiques dans la table "Exigences classiques rattachées à cette exigence de haut niveau" d'une exigence de haut niveau
-
Cas de test :
- Ajout d'un lien pour naviguer vers une exigence associée à un pas de test
-
Exécutions :
- Renommage de l'espace Campagnes en espace Exécutions
- Ajout de nouveaux objets "Sprint" et "Groupe de sprints" dans l'espace Exécutions pour valider des exigences dans une logique de sprint :
- Création et organisation des sprints dans l'arborescence
- Gestion du contenu d'un sprint
- Test et validation des exigences d'un sprint
- Gestion du statut d'un sprint
- Synchronisation de milestones / itérations GitLab et de sprints Jira en sprints Squash
-
Exécutions automatisées :
- Visualisation des logs d'exécution en temps réel
- Disponibilité du fichier des logs d'exécution mis à jour selon une fréquence définie
- Affichage de la durée d'exécution des tests automatisés
- Suivi de la disponibilité des environnements d'exécution et du statut de l'orchestrateur
-
Xsquash4GitLab / Xsquash4Jira :
- Configuration initiale et modification de la synchronisation de sprints dans l'espace Exécutions
- Refonte de l'affichage de la table des synchronisations sur la page de configuration du plugin
- Simulation obligatoire avant ajout ou modification d'une synchronisation
-
Administration :
- Ajout d'un espace de gestion des profils utilisateurs :
- Création de profils utilisateurs avec personnalisation des permissions de l'espace administration
- Activation / désactivation d'un profil utilisateur
- Visualisation des utilisateurs et équipes associés à un profil
- Visualisation de la matrice des permissions par profils
- Import de projet Xray dans un projet Squash (cas de test et plans d'exécution)
- Suivi des imports Xray prévus et effectués
- Amélioration de la gestion des serveurs de code source :
- Simplification de la fenêtre d'ajout de dépôt
- Option pour ne pas transmettre les identifiants aux environnements d'exécution
- Création d'un jeton d'API par un administrateur pour un utilisateur de type "Serveur d'automatisation de tests"
- Ajout d'un espace de gestion des profils utilisateurs :
-
SAML :
- Ajout d'une propriété pour empêcher les utilisateurs de s'authentifier à Squash avec leurs identifiants Squash
-
Technique :
- Amélioration des performances de l'import de cas de test
- Ajout d'une propriété pour définir l'emplacement sur le serveur où sont clonés les dépôts Git pour la transmission des cas de test Gherkin ou BDD rédigés dans Squash TM
- Ajout d'une propriété pour limiter le nombre maximal d'exigences à importer par fichier d'import
- Ajout d'une propriété pour limiter le nombre maximal de tickets que peut contenir une synchronisation Xsquash4GitLab ou Xsquash4Jira à son ajout
- Intégration de certains plugins dans Squash TM :
- Bibliothèque d'actions
- Result Publisher
- Squash AUTOM
- Test Plan Retriever
-
Améliorations de performance :
- Import de cas de test
- 217 Affichage des écrans de l'espace Exécutions
- 214 Affichage d'un tableau de bord de campagne contenant des graphiques
- Affichage de la grille du plan de test de l'itération
- Lancement de gros plans de test d'itération
- Affichage de la liste des problèmes connus
- Suppression de plusieurs projets
- …
-
Licence :
- Passage de la gestion de templates personnalisés utilisés pour les rapports éditables en version Community
-
API REST :
- Sécurité :
- Suppression des détails techniques et des traces de pile dans les réponses
- Dépréciations :
- Dépréciation des endpoints de
/permissions
au profit de ceux de/clearances
, qui prennent désormais en charge les profils personnalisés. Aucune date de suppression n'est encore fixée, mais aucune amélioration future ne sera apportée à/permissions
.
- Dépréciation des endpoints de
- Transverse :
- Intégration des endpoints de l'API Bibliothèque d'actions dans le nouveau menu
Action Words
- Get sprint group (
/sprint-groups/{id}
) : récupération simplifiée des informations d'un groupe de sprint - Get sprint (
/sprint/{id}
) : récupération simplifiée des informations d'un sprint - Harmonisation de l’URL pour la récupération d'une campagne par son nom :
- Ancien endpoint :
/campaignsByName/{name}
- Nouvel endpoint :
/campaigns?campaignName={name}
, par exemple :/campaigns?campaignName=MyCampaign
- Ancien endpoint :
- Get automated execution extender (
/automated-execution-extenders/{id}
) : ajout du temps d’exécution (duration
) dans les informations d’une exécution - Get a synchronized requirement (
/requirements/{id}
) : ajout de l'ID (remote_req_id
), de l'URL (remote_req_url
) et du statut du périmètre (remote_req_perimeter_status
) - Récupération du statut d’avancement (
progress_status
) pour une campagne, une itération et une suite de tests - Récupération, ajout et modification du statut (
status
) d'une itération - Récupération, ajout et suppression d'un jeton d'API (
/tokens
)
- Intégration des endpoints de l'API Bibliothèque d'actions dans le nouveau menu
- Sécurité :
-
API REST administration :
- Gestion par Squash TM du chemin local (
repository_path
) pour les serveurs de partage de code source - Génération d’un jeton API pour les utilisateurs des serveurs d’automatisation de tests (
/users/{id}/tokens
) - Verrouillage de la modification d’un utilisateur (
/users/{id}
) entre les groupes Utilisateur et Serveur d’automatisation de tests - Continuité de l'intégration de la documentation de l’API classique liée à l'administration dans la documentation de l’API admin
- Gestion par Squash TM du chemin local (
Corrections
-
Exécutions :
- 189 La suppression d'un dossier dans l'espace Exécutions, alors qu'un jalon était associé au projet, entraînait une erreur.
- Les statuts "Ignoré" ou "Annulé" étaient affichés de manière inappropriée dans la liste des statuts d'exécution alors qu'ils auraient dû en être exclus.
- Il était possible de reprendre une exécution existante même si le jalon était verrouillé.
- Il était possible d'essayer d'ajouter une anomalie à un cas de test supprimé (cela entraînait une erreur).
-
Rapports :
- 209 La génération d'un cahier d'exigences modifiable avec une sélection "Sélectionner un jalon" et la case "Imprimer seulement la dernière version d'exigence'" décochée échouait avec une erreur.
-
Synchronisation GitLab / Jira :
- 277 Deux synchronisations pouvaient cibler le même dossier, ce qui entraînait l'échec de la dernière synchronisation.
- Une synchronisation jamais exécutée était indiquée comme ayant été exécutée en dernier le 1er janvier 1970.
- Si une synchronisation GitLab était configurée avec un chemin cible contenant un espace au début d'un de ses composants, un nouveau dossier était créé pour chaque milestone.
- Il était possible de déclarer deux synchronisations Jira avec des noms ne différant que par des espaces préfixés.
-
Automatisation :
- Le filtrage de la vue de la suite automatisée était cassé.
- 239 Sur une base de données PostgreSQL, le filtrage sur la colonne "URL SCM" de l'espace Automatisation (Automaticien) générait une erreur.
- 13 Si les tests automatisés étaient réordonnés dans un plan de test, leurs résultats dans la boîte de dialogue des détails d'exécution étaient triés de manière incorrecte.
- Dans l'espace Automatisation, essayer de transmettre un cas de test déjà transmis entraînait une erreur, alors que cela n'aurait dû avoir aucun effet.
- Les statuts de l'exécution d'un test automatisé et de sa suite de tests n'étaient pas correctement respectivement mis à "Bloqué" et "Erreur" en cas d'erreur technique.
- Lorsqu'une suite de tests contenant des tests de plusieurs projets est lancée, plusieurs workflows sont créés. L'annulation de l'un d'entre eux n'était pas gérée correctement : il était annulé, mais les résultats des tests des autres workflows n'étaient pas mis à jour dans la vue de la suite de tests.
- L'exécution de certains tests d'une suite de tests à l'aide de Squash TF était cassée : le lancement générait une erreur.
- Les cas de test, dans un projet configuré avec un serveur d'automatisation et inclus dans un plan de test d'un projet sans serveur d'automatisation, avaient des exécutions mal gérées.
- Les rapports de tests automatisés ayant une barre oblique dans leur titre ne pouvaient pas être affichés.
- La vérification de l'URL du killswitch échouait parfois, par exemple lors du passage par un reverse-proxy, bien que l'URL soit correcte.
- Certaines configurations supplémentaires de l'orchestrateur qui n'étaient pas du YAML valide n'étaient pas signalées comme telles.
-
Administration :
- 103 Le tri des profils dans le tableau des habilitations était incorrect.
-
Transversaux :
- Essayer d'importer un fichier plus grand que la limite configurée entraînait une erreur interne plutôt qu'afficher un message d'erreur.
- Lors de la recherche d'exigences ou de cas de test sur la page de recherche respective, l'utilisation d'une chaîne contenant des espaces multiples ou un espace final entraînait une erreur sur les instances Squash TM utilisant une base de données PostgreSQL.
- Squash TM ne démarrerait pas si un plugin de bugtracker était supprimé alors que le suivi des anomalies était toujours configuré.
- Les jetons personnels n'étaient pas correctement triés dans la vue des jetons.
-
Ergonomie :
- Dans l'aperçu des pièces jointes, un fichier tar vide était affiché sans indication qu'il était vide.
- Le menu d'accès à la documentation de l'API REST n'était pas affiché s'il n'y avait pas encore de projet dans Squash TM.
- Le clic sur un lien dans un texte riche entraînait le passage du champ de texte en mode édition.
- Les cases à cocher et les listes déroulantes désactivées étaient mal rendues.
- Lorsque le lancement automatique de la recherche est désactivé, un message indique maintenant clairement si la recherche n'a pas encore été exécutée ou si la recherche a été exécutée et n'a renvoyé aucun résultat.
- Le glissement d'une action dans l'espace Actions déclenchait à tort la mise en évidence du texte en dessous.
- Un bouton "Suivant" était mal positionné.
- Certaines grilles n'étaient pas défilables horizontalement avec un pavé tactile.
-
Sécurité :
- Amélioration du contrôle sur les fichiers téléchargeables à partir de Squash TM ;
- Amélioration du contrôle du RBAC lors de l'accès à l'API backend.
-
Xsquash4Jira :
- Il n'y avait pas de boîte de dialogue demandant à l'utilisateur ce qui devait être fait des synchronisations existantes (les supprimer ou les conserver) lorsqu'il désactivait le plugin Xsquash4Jira.
-
Xsquash4Gitlab :
- 241 Dans certains cas particuliers, comme la modification de la configuration du plugin Xsquash4Gitlab dans deux onglets de navigateur différents, des "lignes fantômes" (c'est-à-dire des lignes avec un champ GitLab indéfini) apparaissaient dans les mappings de champs.
-
GitLab Bugtracker :
- L'aperçu des problèmes GitLab ne gérait pas correctement les caractères HTML spéciaux.
- Les identifiants GitLab manquants pour l'utilisateur n'étaient pas correctement gérés lors de la configuration du plugin GitLab Bugtracker. Le plugin demande désormais explicitement à l'utilisateur de fournir ses identifiants.