Aller au contenu

Préparer SquashTM

Dépôt de tests automatisés

Pour ajouter des résultats CI/CD à SquashTM, vous devez avoir des tests automatisés.

Dans cet exemple, nous utilisons une suite de tests Robot Framework.

Ce que fait cette suite de tests :

Cette suite de tests Robot Framework valide les règles de connexion. Elle contient deux cas de test :

  • Valid Login Passes : Teste une connexion valide (valid_login) qui répond à toutes les exigences (longueur correcte, pas d'espaces). Ce test devrait passer.
  • Invalid Login Fails : Teste une connexion invalide (invalid login) qui viole les règles (contient un espace). Ce test devrait échouer.

Cette suite démontre comment les tests automatisés peuvent produire à la fois des résultats en succès et en échec, qui seront reflétés dans SquashTM après l'intégration.

Configuration de l'authentification

Pour suivre ce guide, vous avez besoin au minimum de :

  • Pour la configuration du projet : Privilèges administrateur requis pour créer des projets
  • Pour la publication des résultats de tests : Un compte avec des permissions d'exécution

Pour ce guide, nous utiliserons un jeton API avec le compte administrateur intégré à des fins de démonstration.

Création d'un jeton API

Vous pouvez créer un jeton API avec des droits de lecture et écriture, soit depuis l'interface web, soit via l'API :

Depuis l'interface web :

Apprenez comment créer et gérer les jetons API dans la documentation des jetons API personnels.

Depuis l'API (optionnel) :

Vous pouvez créer un jeton en envoyant une requête POST avec l'authentification basique <login:password> à /api/rest/latest/tokens :

{
  "name" : "token read write",
  "permissions" : "READ_WRITE",
  "expiry_date" : "2026-12-01"
}

Vous pouvez récupérer le jeton depuis le corps de la réponse.

Authentification basique requise

Pour créer un jeton via l'API, l'authentification basique doit être activée. Si elle n'est pas activée, créez le jeton depuis l'interface web à la place.

Sauvegardez votre jeton API

Important : Les jetons API ne sont affichés qu'une seule fois au moment de la création (interface web) ou dans la réponse API. Assurez-vous de copier et sauvegarder votre jeton immédiatement. Si vous le perdez, vous devrez en générer un nouveau.

Environnements de production

En production, créez un compte utilisateur technique dédié avec des permissions minimales (uniquement celles requises pour exécuter des tests dans l'espace de travail Exécutions).
Utilisez le jeton API de ce compte pour l'authentification CI/CD afin de respecter les bonnes pratiques de sécurité.

Configurer le projet, le cas de test et le plan d'exécution dans SquashTM

Dans SquashTM, préparez le projet afin que les résultats CI/CD puissent être mappés et affichés.
Vous pouvez le faire soit depuis l'interface web, soit utiliser l'API.
Pour créer un projet, vous aurez besoin de privilèges administrateur.

Depuis l'interface web

Étape 1 : Créer un projet

Allez dans Administration > Projets et ajoutez un projet. Ajouter

Tableau de gestion des projets

Étape 2 : Créer un cas de test

Allez dans l'espace de travail Cas de test et ajoutez un cas de test dans le projet que vous venez de créer.

Ajouter un cas de test

Remplissez le champ référence de test automatisé.

Critique : Référence de test automatisé

La référence de test automatisé est le mécanisme de mapping clé qui relie les résultats de tests automatisés aux cas de test SquashTM. Ce champ est essentiel pour que l'intégration CI/CD fonctionne correctement.

Comment ça fonctionne :

  • Lorsque votre pipeline CI/CD exécute les tests automatisés, le parser génère une référence pour chaque résultat de test
  • SquashTM utilise cette référence pour faire correspondre les résultats de tests entrants avec les cas de test correspondants
  • Si les références ne correspondent pas exactement, les résultats de tests seront ignorés par Squash.

Dans ce guide, le format de référence est : <NomSuite>.<NomTest> (ex. Login Validation Tests.Valid Login Passes)

Dans cet exemple, nous utilisons le nom de la suite de tests et le nom du test, séparés par un point.
Par exemple : Login Validation Tests.Valid Login Passes

référence de test automatisé

Plusieurs tests dans votre suite

L'exemple de suite de tests Robot Framework contient deux cas de test. Créez un second cas de test dans SquashTM avec la référence "Login Validation Tests.Invalid Login Fails" pour correspondre au second test automatisé.

Étape 3 : Ajouter le cas de test à un plan d'exécution

Allez dans l'espace de travail Exécutions, ajoutez une campagne dans le projet que vous venez de créer.
Ajoutez une itération dans la campagne.
Ajoutez le(s) test(s) que vous venez de créer au plan d'exécution de l'itération en cliquant sur le bouton associer des cas de test, puis glissez-déposez les cas de test dans le tableau du plan d'exécution.

associer des cas de test

Dans cet exemple, nous avons ensuite un plan d'exécution avec nos deux cas de test précédents :

plan d'exécution

Depuis l'API

Prérequis pour l'utilisation de l'API

  • Authentification : Vous devez être authentifié pour utiliser l'API (voir les prérequis pour la configuration de l'authentification).
  • Plugin API REST Admin : Pour créer un projet en utilisant l'API, vous devez avoir le plugin API REST Admin installé dans SquashTM et une licence Premium 👑 ou Ultimate 💎. Si vous avez une licence Community, vous pouvez créer un projet en utilisant l'application web.

Étape 1 : Créer un projet

Avec des privilèges administrateur, vous pouvez créer un projet en envoyant une requête POST à /api/rest/latest/projects.

Par exemple :

{
  "_type" : "project",
  "name" : "CI Test Integration Demo"
}

Vous pouvez récupérer l'ID du projet depuis le corps de la réponse.

Étape 2 : Créer un cas de test

Vous pouvez créer des cas de test en envoyant une requête POST à /api/rest/latest/test-cases.

Le champ automated test reference doit être rempli. Il sera utilisé par SquashTM pour mapper les résultats d'exécutions automatisées au cas de test correspondant. Dans cet exemple, nous utilisons le nom de la suite de tests et le nom du test, séparés par un point.

{
  "_type" : "test-case",
  "name" : "Valid Login Passes",
  "parent" : {
    "_type" : "project",
    "id" : 1
  },
  "automated_test_reference": "Login Validation Tests.Valid Login Passes"
}

Vous pouvez récupérer l'ID du cas de test depuis le corps de la réponse.

Étape 3 : Ajouter le cas de test à un plan d'exécution

Tout d'abord, vous devez créer une campagne dans le projet que vous venez de créer.
Vous pouvez créer une campagne en envoyant une requête POST à /api/rest/latest/campaigns.

{
  "_type" : "campaign",
  "name" : "CI/CD Integration Demo Campaign",
  "parent" : {
    "_type" : "project",
    "id" : 1
  }
}

Vous pouvez récupérer l'ID de la campagne depuis le corps de la réponse.

Ensuite, vous devez créer une itération dans la campagne.
Vous pouvez créer une itération en envoyant une requête POST à /api/rest/latest/campaigns/{campaign_id}/iterations.

{
  "_type" : "iteration",
  "name" : "Demo Iteration",
  "parent" : {
    "_type" : "campaign",
    "id" : 1
  }
}

Vous pouvez récupérer l'ID de l'itération depuis le corps de la réponse.

Enfin, vous pouvez ajouter le cas de test au plan d'exécution de l'itération en envoyant une requête POST à /api/rest/latest/iterations/{iterationId}/test-plan.

{
  "_type" : "test-plan-item",
  "test_case" : {
    "_type" : "test-case",
    "id" : 1
  }
}

Ajouter le second cas de test

Répétez cet appel API avec l'ID du second cas de test (id : 2) pour l'ajouter également au plan d'exécution.

Ce que vous avez accompli

Vous êtes prêt ! Votre environnement SquashTM est maintenant prêt à recevoir les résultats de tests CI/CD.

Ce que vous avez maintenant :

  • Un projet avec des cas de test qui ont des références de test automatisé
  • Un plan d'exécution (itération) pour suivre les exécutions de tests
  • Un jeton API pour l'authentification

Prochaines étapes

Ce que vous apprendrez dans les prochaines étapes :

  • Comment configurer votre CI/CD pour exécuter des tests automatisés et produire des rapports xUnit
  • Comment parser le rapport et construire le payload JSON SquashTM
  • Comment publier les résultats dans SquashTM via l'API

Ce dont vous aurez besoin :

  • Votre URL publique de SquashTM
  • Votre jeton API
  • L'ID d'itération de votre plan d'exécution
  • Le format de la référence de test automatisé de vos cas de test (ex. NomSuite.NomTest)

Passez à : Exécuter les tests automatisés en CI/CD