Automatisation avec Katalon
Cette fonctionnalité est disponible uniquement dans la version Premium de Squash AUTOM.
Le support de Katalon est disponible à partir de Squash TM 3.0.
Configuration de l'environnement d'exécution
katalonc
(qui est le Katalon Runtime Engine) doit être présent dans l'environnement d'exécution et accessible via la variable d'environnement PATH
.
Variables d'environnement
Les trois variables d'environnement suivantes doivent être définies et renseignées dans l'environnement d'exécution :
Variable | Contenu | Exemple |
---|---|---|
KATALON_API_KEY | Clef de licence API de Katalon | 123a4567-123a-1ab2-1234-1234567890ab |
KATALON_ORG_ID | ID d'organisation chez Katalon | 123456 |
KATALON_BROWSER_TYPE | Type de browser par défaut | Web Service |
De plus, la variable d'environnement suivante peut aussi être définie :
Variable | Contenu | Exemple |
---|---|---|
KATALON_EXECUTION_PROFILE | Profil d'exécution à utiliser | production |
Référence du test dans Squash TM
Info
Le résultat de chaque exécution d'un cas de test Squash TM est calculé en prenant en compte les résultats individuels de chaque cas de test appartenant à la collection de suites de tests ou à la suite de tests, du fichier projet (.prj
) Katalon exécuté :
- Si au moins un test est en statut Error (dans le cas d'un problème technique), l'exécution sera en statut Blocked.
- Si au moins un test a échoué fonctionnellement et qu'aucun test n'est en statut Error, l'exécution sera en statut Failed.
- Si tous les tests ont réussi, l'exécution sera en statut Success.
Pour lier un cas de test Squash TM à un test automatisé Katalon, le champ Référence du test automatisé du bloc Automatisation du cas de test doit avoir la forme suivante :
[dépôt]/[projet]#[collection]#[suite]#[cas_de_test]
(La référence contient toujours trois caractères #
.)
avec :
-
[dépôt]
: Nom du dépôt Git. -
[projet]
: Chemin jusqu'au nom du fichier projet Katalon (avec son extension.prj
) à partir de[dépôt]
. -
[collection]
: Chemin relatif à partir du dossier du projet Katalon jusqu'au nom de la collection de suites de tests.
Ce paramètre est optionnel, c'est-à-dire que la chaîne de caractères[collection]
peut être vide.
Ce paramètre est exclusif par rapport à[suite]
([collection]
et/ou[suite]
doit être vide). -
[suite]
: Chemin relatif à partir du dossier du projet Katalon jusqu'au nom de la suite de tests.
Ce paramètre est optionnel, c'est-à-dire que la chaîne de caractères[suite]
peut être vide.
Ce paramètre est exclusif par rapport à[collection]
([collection]
et/ou[suite]
doit être vide). -
[cas_de_test]
: Chemin relatif à partir du dossier du projet Katalon jusqu'au nom du cas de test spécifique à parser pour lequel on désire obtenir un résultat en particulier.
Ce paramètre est optionnel, c'est-à-dire que la chaîne de caractères[cas_de_test]
peut être vide.
Référence du test automatisé et exécution
La précision du chemin relatif à partir du dossier du projet Katalon jusqu'au nom du cas de test spécifique [cas_de_test]
, dans la référence du test, n'influe pas sur l'exécution, mais sur la détermination du résultat du test.
Ainsi, même en définissant une granularité à l'échelle du cas de test spécifique, la totalité des cas de tests contenus dans la collection de suites de tests ou dans la suite de tests sera exécutée (ce qui signifie, par exemple, que si plusieurs cas de tests Squash TM pointent vers la même collection de suites de tests ou vers la même suite de tests, mais vers des cas de test différents, tous ces cas de tests seront exécutés plusieurs fois).
Les rapports de test contiennent les traces de tous les cas de tests exécutés. Par contre, seuls les statuts Error / Failed / Success correspondant à cette granularité fine seront considérés pour définir le résultat du cas de test Squash TM.
Choix exclusif de la collection de suites de tests ou de la suite de tests
Les sections [collection]
et [suite]
sont exclusives l'une par rapport à l'autre. On doit renseigner soit la collection de suites de tests, soit la suite de tests, mais pas les deux.
Au final, le champ Référence du test automatisé doit contenir obligatoirement trois caractères #
.
Nature des paramètres Squash TM exploitables
Voici le tableau des paramètres exploitables (ces paramètres sont transmis en tant que paramètres de test, voir ci-dessous, Squash TM ne génère pas de paramètres globaux) :
Nature | Clé |
---|---|
Nom du jeu de données | DSNAME |
Paramètre d'un jeu de données | DS_[nom] |
Référence du cas de test | TC_REFERENCE |
UUID interne du cas de test | TC_UUID |
Champ personnalisé du cas de test | TC_CUF_[code] |
Champ personnalisé de l'itération | IT_CUF_[code] |
Champ personnalisé de la campagne | CPG_CUF_[code] |
Champ personnalisé de la suite de tests | TS_CUF_[code] |
Légende :
[code]
: valeur renseignée dans le champ “Code” d’un champ personnalisé[nom]
: nom du paramètre tel que renseigné dans Squash TM
Comme indiqué, Squash TM ajoute un préfixe au code du champ personnalisé transmis. Assurez-vous de le prendre en compte.
Voir la documentation de Squash TM pour plus d'information sur les champs personnalisés.
Utilisation de paramètres
Il est possible lors de l’exécution d’un test Katalon d’exploiter des paramètres au sein de celui-ci. Un paramètre peut être un paramètre de test ou un paramètre global. Squash TM ne transmet que des paramètres de test. Des paramètres de test et des paramètres globaux peuvent être utilisés dans Squash DEVOPS avec l'action katalon/params
.
Les paramètres globaux et les paramètres de test sont utilisables dans Katalon sous forme de global variables en utilisant la syntaxe GlobalVariable.param_name
(voir la documentation de Katalon). Si le même nom est utilisé pour un paramètre global et un paramètre de test, c'est ce dernier qui est pris en compte.
Ordre de priorité en cas d'homonymie de variable
Une même variable peut être définie à divers endroits, dans ce cas l'ordre de priorité est (par ordre décroissant) :
- Variable d'un jeu de données ou d'un CUF dans Squash TM (ex :
gid
= 29428053 dans le jeu de donnéesJDD_DEMO_POSTMAN
, qui sera transmise sous le nomDS_gid
). - Si un profil d'exécution est défini (via la variable d'environnement
KATALON_EXECUTION_PROFILE
), alors la variable globale si elle y est définie (ex :DS_gid
= 36483577 dans le profilproduction
). - Variable globale provenant du profil par défaut si elle y est définie (ex :
DS_gid
= 31338079 dans le profil par défaut).
Ceci permet de définir des valeurs par défaut dans les profils d'exécution Katalon et de les écraser optionnellement dans Squash TM.
Exemple
-
Définition de variables globales dans le profil par défaut du projet Katalon
katalon-samples
: -
Déclaration du cas de test
3_PARAMS_TestCase_01_With_GlobalID
dans la suite de tests3_TestSuite_Params_Action
: -
Définition de ce cas de test :
-
Récupération de la valeur des paramètres
DS_url
etDS_gid
(correspondant aux paramètresurl
etgid
du jeu de données Squash TM) dans le cas de test : -
Définition du jeu de données dans Squash TM :
Sélection du profil d'exécution depuis Squash TM
Squash TM 4.1 (ou version postérieure) permet la définition de variables d'environnement dans l'environnement d'exécution. Ainsi, via la variable d'environnement KATALON_EXECUTION_PROFILE
, il est possible de sélectionner le profil d'exécution à utiliser lors de l'exécution des tests Katalon.
En reprenant l'exemple précédent :
-
Définition de la variable d'environnement
KATALON_EXECUTION_PROFILE
: -
Association de la variable d'environnement au Squash Orchestrator :
-
Définition de la valeur de la variable d'environnement au lancement des tests :
Le cas de test PRJ_DEMO_KATALON_T3_TESTSUITE_Params_Action_OK
sera ainsi exécuté avec le profil production
.
Versions supportées
Squash AUTOM et Squash DEVOPS ont été validés avec Katalon 8.2.0. Toute version récente devrait fonctionner.