Passer au contenu principal

Comment exécuter par lots différentes variantes de votre scénario de test

Écrit par Ines
Mis à jour il y a plus de 3 semaines

Ce guide vous explique comment utiliser la fonctionnalité Test Asset Batch pour exécuter plusieurs fois le même scénario de test avec des données différentes (URL, navigateurs, identifiants ou toute autre variable utilisée par votre test).

Présentation

Avec Test Asset Batch, vous téléchargez un ou plusieurs fichiers CSV en tant qu'actifs de test. Chaque ligne du fichier CSV définit une variante unique de votre scénario de test. Lorsque vous déclenchez une exécution via l'API, chaque ligne devient sa propre exécution de test, toutes regroupées dans un seul lot.

Cette fonctionnalité est idéale pour :

  • Tester le même flux sur plusieurs navigateurs ou appareils

  • Exécuter un test de connexion avec différentes informations d'identification utilisateur

  • Valider une page sur plusieurs URL

  • Tout scénario dans lequel vous souhaitez paramétrer votre cas de test

Étape 1 : créez votre fichier CSV

Créez un fichier CSV dans lequel chaque ligne représente une variante de test.

Il existe deux types de colonnes :

Colonnes de données

Il s'agit de colonnes dont les noms correspondent aux espaces réservés aux variables dans votre scénario de test (sans les crochets [] ). Les valeurs remplacent les variables de votre scénario de test avec la priorité la plus élevée.

Par exemple, si votre étape de test indique :

Accédez à [ENVIRONMENT_URL] et connectez-vous avec [USERNAME]

Votre fichier CSV doit comporter des colonnes nommées ENVIRONMENT_URL et USERNAME:

ENVIRONMENT_URL,USERNAME https://staging.example.com,alice https://production.example.com,bob

Colonnes natives (remplacements du navigateur/de l'environnement)

Les colonnes préfixées par _ remplacent les paramètres d'exécution par ligne. Utilisez-les pour faire varier le navigateur, la résolution, l'environnement ou d'autres paramètres d'exécution d'une ligne à l'autre.

Colonne

Description

Exemples de valeurs

_rowname

Nom d'affichage de la ligne dans les résultats

Connexion Chrome, Safari mobile

_browserType

Moteur de navigation

Chromium, Chrome, Firefox, Safari

_resolution

Taille de la fenêtre d'affichage

1920 x 1080, 375 x 812

_type_appareil

Catégorie d'appareil

Ordinateur de bureau, mobile, tablette

_deviceName

Appareil spécifique

iPhone 14, Pixel 7

_location

Géolocalisation du navigateur

ParisSelfHosted

_locale

Langue du navigateur

en-US, fr-FR, de-DE

_darkTheme

Mode sombre

true, false

_javascript

JavaScript activé

vrai, faux

_ignoreHttpsErrors

Ignorer la validation HTTPS

vrai, faux

_avoidDetection

Mode furtif

vrai, faux

_deviceScaleFactor

Densité de pixels

1, 2, 3

_forcedColors

Mode couleur forcé

actif, aucun

_username

Nom d'utilisateur pour l'authentification HTTP

admin

_password

Mot de passe d'authentification HTTP

secret123

_proxy

Serveur proxy

_highlightElements

Actions de mise en surbrillance

vrai, faux

_environmentId

Remplacer l'environnement

UUID de l'environnement

_personaId

Remplacer le persona

UUID de la persona

Exemple CSV complet

Voici un fichier CSV qui teste un flux de connexion sur 3 navigateurs avec différents utilisateurs :

ENVIRONMENT_URL,USERNAME,PASSWORD,_rowname,_browserType,_resolution https://app.example.com/login,alice,pass123,Chrome Desktop,Chrome,1920x1080 https://app.example.com/login,bob,pass456,Firefox Desktop,Firefox,1440x900 https://app.example.com/login,charlie,pass789,Safari Mobile,Safari,375x812

Cela produit 3 tests:

  1. Chrome Desktop — connexion en tant qu'Alice sur Chrome à 1920x1080

  2. Firefox Desktop — connexion en tant que bob sur Firefox à 1440x900

  3. Safari Mobile — connexion en tant que charlie sur Safari à 375x812

Étape 2 : télécharger le fichier CSV en tant que ressource de test

Téléchargez votre fichier CSV vers votre projet dans l'application Web Thunders :

  1. Ouvrez votre projet

  2. Accédez à l'onglet Fichiers de test

  3. Cliquez sur Téléverser un fichier de test et sélectionnez votre fichier CSV

  4. Notez le nom de référence généré qui s'affiche dans la liste des ressources (par exemple, FILE_LOGINS_CSV)

Le nom de référence suit le modèle suivant : FILE_<FILENAME>_<EXTENSION>

  • Le nom du fichier est en majuscules

  • Les tirets, espaces, points et parenthèses sont remplacés par des traits de soulignement

  • Les traits de soulignement multiples consécutifs sont réduits à un seul

Exemples :

  • logins.csv devient FILE_LOGINS_CSV

  • test-data.csv devient FILE_TEST_DATA_CSV

  • my users (v2).csv devient FILE_MY_USERS_V2_CSV

Étape 3 : Exécutez via l'API avec les références d'actifs de test

Ajoutez le champ testAssetReferences au corps de votre requête API lorsque vous appelez le point de terminaison /api/test-cases/run ou /api/test-sets/run:

{   "ProjectId": "c8e34ec4-2464-43c7-8db8-1b3a47a22337",   "TestCaseIds": [     "a836fadc-377a-46fe-96b0-21f37c626bf9"   ],   "EnvironmentId": "eca24252-e566-40a8-b2b0-707b7efa85d8",   "PersonaId": "70d0ac52-fe94-4d89-aba9-8ef28dd8c04c",   "BrowserSettings": {     "Location": "ParisSelfHosted",     "browserType": "Chromium",     "DeviceType": "Desktop",     "Resolution": "1440x900"   },   "TestAssetReferences": ["FILE_LOGINS_CSV"] }

Les BrowserSettings dans le corps de la requête servent de valeurs par défaut. Toute colonne native dans le CSV (comme _browserType) remplace la valeur par défaut correspondante pour cette ligne spécifique.

Les références peuvent également être placées entre crochets : [FILE_LOGINS_CSV].

En-têtes

En-tête

Valeur

Autorisation

Bearer YOUR_THUNDER_TEST_TOKEN

X-MS-API-ROLE

M2M

Type de contenu

application/json

Étape 4 : Combiner plusieurs fichiers CSV (facultatif)

Vous pouvez référencer plusieurs fichiers CSV dans une seule requête. Leurs lignes sont concaténées en un seul lot avec un indexage continu.

"TestAssetReferences": ["FILE_DESKTOP_BROWSERS_CSV", "FILE_MOBILE_DEVICES_CSV"]

Si le fichier desktop-browsers.csv comporte 3 lignes et le fichier mobile-devices.csv 2 lignes, le lot résultant contiendra 5 tests indexés de 1 à 5.

Cela est utile pour organiser vos données de test en groupes logiques (par exemple, un fichier CSV par catégorie d'appareil, un par région, un par rôle utilisateur).

Étape 5 : Examiner les résultats

Après l'exécution, chaque ligne du lot apparaît comme un test distinct dans l'onglet Tests. Vous pouvez identifier les lots par :

  • Nom de la ligne du lot: la valeur de la colonne _rowname (ou une valeur par défaut telle que 1/3, 2/3, 3/3 si aucun _rowname n'a été fourni)

  • Remplacements de données de lot: les valeurs de variable qui ont été injectées pour cette ligne spécifique

Tous les exécutions du même lot partagent un batchId, ce qui facilite le filtrage et le regroupement des résultats.

Exemple GitHub Actions

Voici un workflow GitHub Actions complet qui exécute un lot de variations de test :

name: Run Thunders Batch Tests  on:   workflow_dispatch:  jobs:   run-batch-tests:     runs-on: ubuntu-latest     steps:       - name: Run Batch Test Variations         uses: fjogeleit/http-request-action@v1         with:           url: 'https://api.thunders.ai/api/test-cases/run'           method: 'POST'           customHeaders: >             {               "Authorization": "Bearer $",               "X-MS-API-ROLE": "M2M",               "Content-Type": "application/json"             }           data: >             {               "ProjectId": "c8e34ec4-2464-43c7-8db8-1b3a47a22337",               "TestCaseIds": ["a836fadc-377a-46fe-96b0-21f37c626bf9"],               "EnvironmentId": "eca24252-e566-40a8-b2b0-707b7efa85d8",               "PersonaId": "70d0ac52-fe94-4d89-aba9-8ef28dd8c04c",               "BrowserSettings": {                 "Location": "ParisSelfHosted",                 "browserType": "Chromium",                 "DeviceType": "Desktop",                 "Resolution": "1440x900"               },               "TestAssetReferences": ["FILE_LOGINS_CSV", "FILE_MOBILE_CSV"]             }

Référence rapide

Concept

Détails

Téléchargement CSV

Onglet « Test Assets » (Ressources de test) dans votre projet

Format de référence

FILE__ (en majuscules, les caractères spéciaux deviennent _)

Paramètre API

testAssetReferences (tableau de chaînes)

Colonnes natives

Préfixer avec _ pour remplacer les paramètres du navigateur/de l'environnement

Colonnes de données

Pas de préfixe ; remplacer les espaces réservés des variables du cas de test

Plusieurs fichiers CSV

Transmettre plusieurs références ; fusionner les lignes de manière séquentielle

Regroupement par lots

Toutes les exécutions partagent un batchId

Nommage des lignes

Utilisez la colonne _rowname ou les valeurs par défaut pour indexer/totaliser

Avez-vous trouvé la réponse à votre question ?