Release notes de SquashTM 14.X
Montée de version de Java
À partir de la version 14.0.0, SquashTM n'est plus compatible avec les versions inférieures à Java 25.
Modalités de démarrage (Licences commerciales)
Pour démarrer une instance SquashTM sous licence commerciale - licence SquashTM Premium 👑 ou licence SquashTM Ultimate 💎, l'installation du plugin SquashTM Premium est obligatoire.
Support étendu pour l'authentification basique à l'API REST
La date de fin de support de l'authentification des appels à l'API REST par authentification basique (login + mot de passe) est reportée de mai 2026 (SquashTM 14) à août 2027 (SquashTM 19).
En effet, certains utilisateurs de SquashTM utilisent encore couramment Squash TF, l'ancien mécanisme d'exécution des tests automatisés, déprécié il y a quelques années au profit de SquashTM Orchestrator ou de la remontée des résultats de tests lancés par une CI/CD via l'API REST. Mais Squash TF ne supporte pas l'authentification par token.
Nous maintiendrons donc le support de l'authentification basique jusqu'à la fin de vie de Squash TF, prévue en août 2027. À partir de SquashTM 19, l'authentification des appels à l'API REST sera exclusivement possible par token et Squash TF sera définitivement inutilisable.
SquashTM 14.0.0
Sortie le 28/04/2026
Évolutions
Automatisation :
- Il est désormais possible de désactiver les serveurs d'exécution automatisée sur l'instance. Lorsque cette option est désactivée, les champs associés sont masqués.
Cas de test :
- 559 Ajout d'une nouvelle fenêtre de modification des jeux de données, repensée pour améliorer l'ergonomie.
- Il est désormais possible de réorganiser directement depuis l'interface les valeurs des paramètres des jeux de données.
Intelligence artificielle :
- La génération de cas de test prend désormais en charge l'ajout de fichiers externes et d'exigences comme données contextuelles. Les administrateurs peuvent configurer les formats de fichiers acceptés ainsi que la taille totale maximale des documents par serveur d'IA.
- La génération de cas de test propose désormais des champs supplémentaires tels que le poids et la référence.
- La génération de cas de test inclut désormais des suggestions de jeux de données et de cas de tests variabilisés.
- SquashTM fournit désormais des prompts intégrés et prêts à l'emploi pour la génération de cas de test, en français et en anglais, avec plusieurs styles disponibles (standard, détaillé et détaillé avec jeux de données).
- Les administrateurs peuvent désormais configurer le nombre de tentatives de relance afin d'améliorer la stabilité de la génération.
Technique :
- Migration vers Java 25.
- Migration vers Spring Boot 3.5.9.
Transverse :
- Remplacement de CKEditor par TinyMCE dans l'ensemble des champs de texte riche afin d'assurer un support à long terme et d'offrir une expérience d'édition plus fluide et moderne.
Xsquash Data Center :
- 356 Les exécutions de sprints sont désormais affichées dans Xsquash pour Jira Data Center.
Corrections
Cœur
Administration :
- 594 Correction d'une erreur lors de la modification d'une branche d'un dépôt Git SCM sans avoir cloné le projet au préalable.
- 584 Correction de la disparition des libellés de champs dans les paramètres des pièces jointes lorsque la liste blanche est trop longue.
- Correction de l'absence de rafraîchissement automatique du statut des plugins après l'association d'un projet à un modèle.
- Correction d'une erreur serveur lors de la suppression d'un serveur SCM existant.
- Correction de l'impossibilité de supprimer une option de liste personnalisée liée à un cas de test placé dans la corbeille.
- Correction de l'impossibilité de supprimer des projets ne contenant plus d'action words.
- Correction du remplissage automatique du champ de recherche utilisateur par le navigateur lors de l'ouverture de la fenêtre de réinitialisation du mot de passe.
- Correction d'un affichage dégradé lors de l'ajout d'un bugtracker sans :
- plugin bugtracker disponible ;
- plugin bugtracker installé.
- Correction d'une date de modification incorrecte lors de la création d'un serveur Mantis ou GitLab.
Automatisation :
- Correction du statut d'exécution et de la date de dernière exécution qui ne se mettaient pas à jour lors de l'import de plus de 20 résultats de tests automatisés.
- Correction de la liste déroulante des dépôts qui ne se mettait pas à jour après modification du serveur SCM dans les paramètres d'automatisation du projet.
- Correction d'une erreur de concurrence sur les endpoints d'exécution automatisée avec MariaDB 11+.
- Correction du pourcentage de la barre de progression d'automatisation dépassant 100 % lors des tentatives de relance.
- Correction du rejet des requêtes
/test-statussur MariaDB 11+ lorsqu'un workflow automatisé échoue ou est annulé. - Autorisation de détails d'échec d'exécution automatisée dépassant 65 535 caractères.
Cas de test :
- 624 Correction des jeux de données restants qui ne s'affichaient plus après suppression de tous les jeux de données de la page courante.
- Correction de problèmes de suppression et d'affichage des jeux de données lorsque des jeux de données vides sont présents dans un cas de test.
- Correction du filtre de projet BDD ne reflétant pas les suppressions et renommages de projets.
- Correction de la recherche sur l'éligibilité à l'automatisation retournant des cas de test provenant de projets sans workflow d'automatisation.
- Correction du bouton de suppression ne fonctionnant pas dans l'autocomplétion BDD lors de la modification d'une étape de test existante.
- Correction de « Suggestions de filtres » ne fonctionnant pas dans l'autocomplétion BDD lors de la modification d'une étape de test existante.
Corbeille :
- 613 L'affichage d'un cas de test après sa restauration était cassé, si la liste personnalisée à laquelle il était associé a été modifiée.
Ergonomie :
- Correction de l'affichage non responsive des champs personnalisés de type « texte riche » contenant de longues valeurs dans les entités.
- Correction du sélecteur d'arborescence qui ne se chargeait pas lorsqu'un nouveau projet était créé en arrière-plan.
- Correction d'une faute de français dans la fenêtre de dissociation d'exigence au sein des détails d'étape de test.
- Correction du bouton de copie activé alors qu'aucun nœud n'était sélectionné dans l'arborescence.
Exécutions :
- 583 Correction d'un échec d'exécution lorsqu'un cas de test contient trop de tags dans un même champ personnalisé de type tag.
- 540 Correction de l'ordre des champs personnalisés de type tag non conservé dans les exécutions sous PostgreSQL.
- 602 Affichage de l'assigné d'un élément de plan de test dans le fichier CSV d'export de campagne.
- 592 Correction d'une erreur lors de la réorganisation d'éléments par glisser-déposer dans l'espace d'exécution avec tri positionnel.
- Désactivation des boutons « Nouvelle exécution » et d'exécution via pop-up lorsqu'un sprint est clôturé.
- Correction d'une erreur visuelle après suppression d'exécutions créées via la pop-up d'exécution.
- Correction d'un échec d'export de campagne lorsque le même champ personnalisé est associé à deux projets.
- Correction de l'ordre inversé des exécutions dans l'historique du plan de test d'itération.
- Correction du chargement du plan d'exécution de campagne pour les utilisateurs ayant des profils restreints.
- Correction de l'absence de message d'avertissement lors d'une exécution via pop-up alors qu'un sprint est simultanément clôturé.
- Correction des filtres du plan de test non appliqués lors du lancement de « Exécuter tous les tests automatisés ».
- Correction d'erreurs console lors de la navigation vers le plan de test d'un sprint synchronisé.
- Correction d'une violation de contrainte d'unicité lors de la suppression de suites automatisées.
- Correction de l'impossibilité de redémarrer une itération contenant un cas de test supprimé non assigné au testeur courant.
- Correction du numéro d'exécution incrémenté incorrectement en fonction du nombre d'étapes de test lors d'une réexécution.
- Correction d'une erreur à l'étape 1 lors de la modification d'un cas de test pendant l'exécution.
- Correction d'une erreur lors de la réexécution dans un plan d'exécution d'itération filtré.
Exigences :
- 578 Correction de l'ordre de tri de l'arborescence des exigences réinitialisé après modification du type d'exigence ou rafraîchissement.
- Correction d'un échec de création d'exigence lorsqu'une image possède un attribut
altpersonnalisé.
Import :
- Correction d'un échec d'import de projet lors de l'utilisation de l'import Xray.
- Correction d'un échec d'import de cas de test lors de la réimportation d'un fichier contenant des éléments déjà existants.
Intelligence artificielle :
- Correction de la suppression d'un cas de test en attente supprimant plusieurs éléments à travers différentes générations.
- Correction d'un affichage dégradé dans la génération de cas de test par IA lorsqu'une exigence contient une image.
- Correction de l'indisponibilité de la génération de cas de test par IA lorsque l'utilisateur ne dispose pas des droits CREATE dans le projet source mais les possède dans le projet cible.
- Correction de l'accessibilité de l'écran de génération de cas de test via URL sans permissions adéquates :
- pour les utilisateurs sans droit READ sur les exigences ;
- pour les utilisateurs sans droits sur le projet.
- Correction des blocs de cas de test générés qui n'étaient pas entièrement cliquables pour les actions de réduction et d'extension.
- Correction d'une redirection incorrecte vers une exigence de haut niveau après l'enregistrement de cas de test générés par IA.
- Correction d'un comportement inattendu lors du copier-coller dans la nouvelle fenêtre des prompts.
Performances :
- 609 Correction de requêtes SQL bloquées pendant de longues durées.
- Correction d'un échec de suppression sous PostgreSQL lorsqu'un dossier contient plus de 65 535 éléments.
- Amélioration des performances des migrations de base de données lors de la mise à niveau vers la version 14.
- Amélioration des performances lors de la création de dossiers cibles pour la synchronisation.
- Amélioration des performances des requêtes pour les plans de test volumineux dans l'espace Exécution.
- Amélioration des performances lors de la récupération du nombre d'anomalies dans l'espace Exécution.
- Amélioration des performances lors du déplacement :
- des groupes de sprints ;
- des sprints ;
- des dossiers de campagne ;
- des campagnes ;
- des dossiers de cas de test ;
- des dossiers d'exigences ;
- des exigences ;
- des cas de test.
- Amélioration du temps de réponse lors de l'attachement d'une anomalie déjà liée dans les étapes de test.
- Amélioration des performances lors de l'ajout de permissions à un projet.
- Correction d'un ralentissement important ou d'une erreur 504 lors de l'affichage d'une exigence liée à de nombreux cas de test exécutés.
Pilotage :
- 642 Correction d'un échec de téléchargement du cahier de tests pour les fichiers de rapport volumineux.
- 622 Lors d'un export personnalisé, les identifiants des anomalies Jira étaient exportés à la place de leur clé.
- Correction d'un échec de génération du rapport éditable de cas de test.
- Correction de la colonne « Date d'exécution » affichant le login utilisateur au lieu de la date dans les exports personnalisés.
- Correction d'un échec de génération de rapport de cas de test sur plusieurs projets avec champs personnalisés.
- Correction d'un échec de génération de rapport d'exigences lorsque des champs personnalisés de date obligatoires sont vides.
- Correction d'un affichage incorrect du graphique de progression cumulée dans les tableaux de bord de campagne et d'itération.
- Correction d'un échec de génération de graphique lors du filtrage sur des attributs de campagne ou d'itération.
- Correction du type de rapport (PDF ou éditable) manquant dans les titres de rapports de cas de test en allemand.
- Correction de données incorrectes dans le graphique de « statut des tests » du tableau de bord de campagne.
- Correction de données incorrectes dans le graphique de progression cumulée de campagne avec plusieurs itérations.
- Correction de la casse incorrecte des champs Nature, Type et Catégorie dans les rapports PDF.
- Correction du champ de priorité affiché dans les rapports éditables de cas de test lorsque l'éligibilité à l'automatisation est définie sur « À instruire ».
Sécurité :
- 36 Correction de la CVE-2025-7783 dans la dépendance
form-datadu runner Robot Framework. - 232 Correction de la vulnérabilité critique OpenSSL CVE-2025-15467 dans l'image Docker all-in-one.
- Correction de la vulnérabilité critique OpenSSL CVE-2025-15467 dans l'image Xsquash Cloud.
- Amélioration de l'assainissement des logs par suppression de tous les caractères de contrôle (y compris les séquences d'échappement ANSI) et application aux messages d'erreur d'exception.
- 36 Correction de la CVE-2025-7783 dans la dépendance
Transverse :
- Correction des images stockées en base64 dans les champs personnalisés de texte riche lors de l'association d'un CUF contenant des images par défaut à des entités existantes.
- Correction d'un champ personnalisé de texte riche obligatoire incorrectement considéré comme vide lorsqu'il contient uniquement des images.
- Correction d'une image par défaut dans un champ personnalisé de texte riche obligatoire stockée en base64 lors de la création d'une entité.
Plugins
API :
API REST :
- 414 Correction d'une erreur 500 lors du tri des exigences par nom sur les endpoints de l'API REST.
- Correction d'un problème de requêtes N+1 lors de l'ajout de permissions à un projet.
- Correction du
localhost:8080codé en dur dans les liens de réponse pour les serveurs SCM, dépôts et ensembles de prompts. - Amélioration du binding des variables de chemin sur les endpoints PATCH des exécutions et des étapes d'exécution.
- Correction du timeout incorrectement requis lors de la création d'un serveur IA personnalisé via l'API REST d'administration.
- Correction de l'API retournant un nombre de résultats incorrect pour :
- les entités liées à plusieurs jalons ;
- les projets avec plusieurs jalons.
- Correction d'une section de paramètres de chemin incorrecte dans la documentation de l'API GET
/logs. - Correction d'une journalisation excessive des stacktraces lors de la modification d'un serveur IA inexistant via l'API REST.
- Possibilité de définir le protocole d'authentification lors de la création ou de la modification d'un bugtracker via l'API.
- Ajout de la validation de cohérence entre protocole et politique d'authentification lors de la création ou de la mise à jour d'un serveur bugtracker.
Authentification :
SAML :
- 621 Correction d'une incohérence de sensibilité à la casse avec les logins SAML lorsque l'option « Insensibilité à la casse » est activée.
- Correction de l'utilisateur non redirigé vers la page demandée après une réauthentification SAML.
Automation :
Jira Automation Workflow :
- 434 Correction des champs personnalisés obligatoires non récupérés dans la configuration du plugin Jira Cloud.
- Correction d'un échec de migration multi-projets dû à des valeurs incompatibles pour des champs identiques.
- Correction de l'absence de message d'erreur dans l'interface lors de la transmission d'un cas de test vers Jira sans jeton OAuth2.0.
- Correction du gel de la configuration du plugin WAJ lorsque le projet Jira contient des champs personnalisés obligatoires.
- Affichage d'un message d'erreur lorsque la configuration du plugin est inaccessible à cause d'un jeton serveur supprimé.
- Affichage d'un message d'erreur lorsque la transmission d'un cas de test échoue en raison d'un jeton manquant.
Bugtracker :
Bugtracker Azure DevOps :
- 636 Correction de l'échec d'association d'anomalies dans le plugin Azure DevOps lorsque le nom du projet contient des espaces.
Bugtracker Bugzilla :
- 572 Correction du champ de commentaire disparaissant lors du changement de composant dans le formulaire de déclaration d'anomalie Bugzilla.
Bugtracker GitLab :
- Correction des anomalies GitLab ne s'affichant plus après modification du chemin ou du nom du projet GitLab.
Bugtracker Jira Cloud :
- Amélioration du message d'erreur lors de la déclaration d'un bug sans accès au projet Jira Cloud.
Bugtracker Redmine :
- Correction des nouveaux projets Redmine liés n'apparaissant pas dans la configuration du cache serveur.
- Correction des champs personnalisés entiers acceptant des valeurs décimales lors de la déclaration d'une anomalie Redmine.
- Correction du tableau des anomalies ne se chargeant pas lorsque l'utilisateur possède des permissions limitées sur les trackers dans Redmine.
- Correction de la perte de mise en forme du texte lors de la synchronisation d'anomalies Redmine en tant qu'exigences.
- Correction de l'affichage du nom d'utilisateur lorsque le format est défini sur « login ».
- Correction d'un échec de déclaration d'anomalie lorsque Redmine possède un champ personnalisé de type « Utilisateur ».
Bugtracker Tuleap :
- Correction d'erreurs lors de la déclaration ou de l'attachement d'anomalies avec authentification par jeton.
- Correction d'erreurs lors de la déclaration ou de l'attachement d'anomalies lorsque le titre contient des caractères spéciaux.
- Amélioration du message d'erreur lors de la recherche d'une anomalie inexistante par clé.
Synchronisation des exigences :
Redmine Requirements :
- Correction des champs personnalisés numériques décimaux non récupérés lors de la synchronisation des exigences Redmine.
Xsquash4GitLab :
- Correction de la synchronisation temps réel depuis GitLab échouant à cause d'un problème de sécurité des threads dans le traitement des webhooks.
- Correction d'un problème de requêtes N+1 lors de la création de dossiers de synchronisation GitLab.
- Amélioration des performances de synchronisation par regroupement de la création des dossiers pour les structures d'organisation non plates.
- Correction d'un échec d'association de modèle lorsque l'option « Lier la configuration Xsquash4GitLab » est cochée.
- Correction de la dissociation Epic–Story dans les projets Jira Cloud team-managed non répercutée après synchronisation.
Xsquash4Jira :
- Correction d'un échec de modification du mapping des champs dans un modèle de projet lié à Xsquash4Jira.
- Correction de l'affichage en double des sprints dans le concepteur de plan d'exécution lorsqu'un sprint est synchronisé sur plusieurs projets.
- Correction des sprints synchronisés ne reflétant pas les renommages de types de tickets personnalisés Jira.
- Correction du chemin de synchronisation dans la réponse API incluant incorrectement le nom du projet.
- Correction d'une erreur de synchronisation lorsqu'une exigence possède le même nom que le chemin cible.
- Correction des sous-tâches non synchronisées lors de l'utilisation de « Restreindre au sprint actif » sur des projets Jira team-managed.
- Correction de toutes les synchronisations réactivées lors de la réactivation du plugin pour un projet.
Plugins externes
Xsquash Data Center :
- Affichage des détails des étapes d'exécution enregistrées au moment de l'exécution.
- Correction des mots-clés d'action BDD affichés en anglais au lieu de la langue configurée dans la vue des cas de test Xsquash.
- Correction des liens liés aux exécutions dans l'onglet d'exécution Jira Data Center n'ouvrant pas le bon plan d'exécution.
- Correction d'un problème empêchant la suppression des liens Epic–Story lorsque les Epics et les Stories étaient synchronisés séparément.
Compatibilité avec les logiciels tiers
Gestion des tickets
| Logiciel | Version |
|---|---|
| GitLab Cloud | 19.0.0-pre |
| GitLab Server | 17.7 |
| Jira Cloud | 10.01 |
| Jira DataCenter | 10.4.1 |
Gestion des anomalies
| Logiciel | Version |
|---|---|
| Azure DevOps Services | Dev20.M272.1 |
| Azure DevOps Server | 2022.1 |
| Bugzilla | 5.0.6 |
| GitLab Cloud | 19.0.0-pre |
| GitLab Server | 17.7 |
| Jira Cloud | 10.01 |
| Jira DataCenter | 10.4.1 |
| Mantis | 2.25.3 |
| Redmine | 6.0.6 |
| RTC | 6.0.3 |
| Tuleap | 17.1.99 |
Automatisation
| Technologies de test | Version |
|---|---|
| Agilitest 💎 | 2.3.0 |
| Cucumber JVM | 7.0.0 |
| Cucumber JVM | 4.2.6 |
| Cypress | 12.12.0 |
| JUnit | 5.3.2 |
| JUnit | 4.12 |
| Katalon 💎 | 8.2.0 |
| Playwright | 1.43.1 |
| Postman | 8.12.1 |
| Ranorex 💎 | 9.5 |
| Robot Framework | 6.1.1 |
| SKF | 1.14.0 |
| SoapUI | 5.6.0 |
| UFT 💎 | 15.0.2 |