Vous pouvez ajouter des appels API en tant qu'étapes dans votre scénario de test automatisé.
Ce que vous apprendrez
Comment intégrer des appels API dans votre scénario de test
Configuration des différents types de requêtes API (GET, POST, PUT, DELETE)
Configuration des paramètres de requête, des en-têtes et de l'authentification
Définir des paramètres d'API spécifiques à l'environnement en utilisant le sélecteur d'environnement
Meilleures pratiques pour les tests d'API dans Thunder
Guide pas à pas
Première option
Naviguez jusqu'à votre scénario de test : Ouvrez le scénario de test dans lequel vous souhaitez ajouter l'appel API.
Créez une nouvelle étape : Cliquez sur le bouton "Ajouter une nouvelle étape" OU envoyez une demande dans le chat pour créer une How to generate Test Steps?
Choisissez le type d'appel API : Dans le menu déroulant "Description de l'étape", sélectionnez "Appel API".
Choisissez l'environnement souhaité :
Utilisez le menu déroulant de l'environnement pour configurer les paramètres de l'API pour un environnement spécifique.
Cela permet à la même étape de test de se comporter différemment en fonction de l'environnement actif (par exemple, dev vs prod).
Utilisez l' option**"Same Settings For All Environments" (mêmes paramètres pour tous les environnements)** pour définir des paramètres d'API communs à tous les environnements.
Toute configuration spécifique à l'environnement remplace l' option "Same Settings For All Environments" lorsqu'elle est disponible.
S'il n'existe pas de configuration spécifique à l'environnement, Thunder reprend les valeurs de l'option "Same Settings For All Environments" (mêmes paramètres pour tous les environnements) .
→ Cela permet d'adapter votre démarche à plusieurs environnements sans la dupliquer.
Configurez votre demande
Méthode et URL
Choisissez votre méthode HTTP et entrez le point de terminaison de l'API
Exemple : <https://api.example.com/v1/
>Paramètres
Ajoutez des paramètres de requête en utilisant le bouton "Add Row".
En-têtes
Mettez en place les en-têtes nécessaires tels que :
Content-Type : application/json
Authentification
Configurez votre méthode d'authentification (Bearer token, Basic Auth, etc.)
Corps de la requête
Ajoutez votre charge utile JSON pour les requêtes POST/PUT.
Exécutez votre scénario de test : Cliquez sur "Execute" pour exécuter votre scénario de test et voir le résultat de l'appel API.
Affichage et copie de la réponse complète de l'API
Une fois l'appel API exécuté, vous pouvez afficher la réponse complète en cliquant sur le bouton "Afficher tout**"** à côté du résultat de l'appel, ce qui ouvrira une fenêtre modale affichant la réponse complète de l'API. Si vous souhaitez copier le contenu de la réponse, il vous suffit de cliquer sur le bouton "Copier**"** dans la fenêtre modale.
Deuxième option
Accédez à votre scénario de test : Ouvrez le scénario de test dans lequel vous souhaitez ajouter l'appel API.
Demandez au chat d'ajouter une nouvelle étape API pour vous : Envoyez une demande dans le chat pour créer une étape API et il le fera pour vous.
Exemple : "Ajouter une requête POST à https://example.com avec un jeton XXX et un corps contenant les champs id et content".
Cas d'utilisation courants
Voici quelques exemples pratiques d'utilisation des appels API dans Thunder :
Configuration des données : Créer des données de test via des requêtes POST avant d'exécuter des tests d'interface utilisateur.
Vérification du backend : Utiliser des requêtes GET pour vérifier les données après les interactions avec l'interface utilisateur.
Nettoyage des tests : Mettre en œuvre des requêtes DELETE pour nettoyer les données de test
Définition des paramètres API par environnement
Thunder vous permet de définir différents paramètres d'API par environnement directement dans votre étape d'API.
Ceci est utile lorsque :
Les paramètres de l'API changent entre le développement, la mise en scène et la production.
Vous voulez maintenir un seul cas de test avec un comportement dynamique à travers les environnements.
Comment cela fonctionne-t-il ?
Chaque étape de l'API dispose d'un sélecteur d'environnement qui vous permet de passer d'un environnement à l'autre :
des environnements spécifiques (par exemple, "Staging" ou "Prod")
une configurationpartagée "mêmes paramètres pour tous les environnements".
Règles de priorité :
Si des paramètres sont définis pour l'environnement actif, ils sont utilisés.
S'il n'existe pas de paramètres pour cet environnement, Thunder revient à la configuration "Mêmes paramètres pour tous les environnements".
Cela signifie que vous ne devez surcharger que les environnements où les paramètres sont différents - les autres environnements peuvent se rabattre sur la configuration "Mêmes paramètres pour tous les environnements".
Cette configuration vous permet d'éviter de dupliquer les étapes de test et simplifie la logique de test spécifique à l'environnement.
Exemple :
"Mêmes paramètres pour tous les environnements" config:
POST
https://api.example.com/v1/ avec le jeton de supportXYZ
Staging config:
POST
https://staging-api.example.com/v1/ avec authentification de baseNom d'utilisateur
:Mot de passe
Lorsque le test s'exécute dans l'environnement staging, il utilise la configuration staging ; dans le cas contraire, il revient à "Same Settings For All Environments".
Utilisation d'informations d'identification et de variables dans les étapes d'appel à l'API
Vous pouvez également utiliser des informations d'identification et des variables dans vos étapes d'appel d'API pour gérer en toute sécurité des informations sensibles telles que les clés d'API, les jetons d'authentification ou d'autres données confidentielles requises pour vos requêtes. Vos appels d'API restent ainsi sécurisés et flexibles, ce qui vous permet de passer facilement d'un environnement à l'autre ou d'une méthode d'authentification à l'autre sans modifier vos scénarios de test.
Exemple : Création sécurisée d'un utilisateur via l'API :
Imaginons que vous ayez un point de terminaison API qui crée un nouveau compte utilisateur. Ce point de terminaison nécessite une clé API pour l'autorisation et prend également des informations d'identification de l'utilisateur et des variables dans le corps de la demande.
Au lieu de coder en dur ces valeurs sensibles, nous allons montrer comment les gérer de manière sécurisée en utilisant des informations d'identification et des variables dans votre environnement.
1. Créer des informations d'identification et des variables dans votre environnement
Créez un identifiant nommé API_KEY avec la valeur réelle de votre clé API.
Créez une variable nommée USER_EMAIL avec votre email de connexion.
Cette variable sera utilisée ultérieurement dans le corps de la requête pour enregistrer ou authentifier l'utilisateur.
Créez un identifiant nommé PASSWORD avec votre mot de passe de connexion.
Elle est également utilisée dans le corps de la requête. Cela vous permet de simuler un processus de création d'utilisateur réel en toute sécurité.
2. Référencez les informations d'identification et les variables dans votre étape d'appel à l'API
Environnement : Même paramètre pour tous les environnements
Méthode : POST
Headers :
Content-Type :
application/json
Authorization :
Bearer Token :
[API_KEY]
Body :
{ "username": "user", "email": "[USER_EMAIL]", "password": "[PASSWORD]" }
Authorization : L'en-tête Authorization inclut de manière sécurisée votre identifiant [API_KEY], garantissant l'authentification de vos requêtes API sans exposer la clé dans votre définition de test.
Corps : Vous pouvez utiliser des informations d'identification et des variables telles que [USER_EMAIL] et [PASSWORD] dans le corps de la requête pour des scénarios tels que la création d'un nouvel utilisateur, ce qui permet de centraliser davantage votre gestion des secrets.
Lorsque Thunder Code exécute cette étape d'appel API, il remplacera automatiquement [API_KEY], [USER_EMAIL] et [PASSWORD] par leurs valeurs respectives dans l'environnement choisi. Cette approche offre
une sécurité renforcée : Vos clés d'API sensibles et autres informations d'identification et variables ne sont jamais codées en dur dans vos cas de test.
Amélioration de la maintenabilité : Mettez facilement à jour les informations d'identification et les variables en un seul endroit (l'environnement) sans modifier plusieurs étapes d'appel à l'API.
Flexibilité accrue : Exécutez en toute transparence des tests d'API dans différents environnements (développement, staging, production) en changeant simplement d'environnement actif, à condition que les informations d'identification et les variables nécessaires se trouvent dans chacun d'entre eux.