Actions en QTP/UFT avec exemple
⚡ Résumé intelligent
Actions en UFT/QTP Divisez un script de test en unités logiques et réutilisables afin que les testeurs puissent créer, maintenir et partager plus rapidement des automatisations. Cette page explique les trois types d'actions, comment les diviser et les appeler, et comment transmettre des données entre les actions.

Qu'est-ce qu'une action dans UFT/QTP?
Action in UFT/QTP Divisez un test en « unités logiques » ou « processus métier ». Chaque action regroupe les étapes qui réalisent une tâche identifiable, comme se connecter, rechercher un vol ou réserver un billet. Les actions permettent de créer un script plus modulaire et efficace.
Lorsqu'un script est créé, il ne contient qu'une seule action. Vous pouvez ajouter d'autres actions à votre script Micro Focus. UFT Le script est conforme aux exigences, et chaque action ajoutée conserve sa propre logique et ses données locales, séparées du reste du test.
Découper un long script en actions s'avère payant dès qu'un test doit être modifié. Un testeur peut ainsi mettre à jour une action, comme la séquence de connexion, sans toucher à la logique de recherche ou de paiement qui se trouve dans d'autres actions. Cette isolation transforme également les actions en modules réutilisables que d'autres scripts peuvent appeler au lieu de répéter les mêmes étapes.
Un script de réservation de vol classique, par exemple, se divise en trois actions distinctes : connexion, recherche de vol et réservation de billet. Chaque action possède ses propres étapes et données locales ; ainsi, un testeur qui doit uniquement vérifier la connexion n’a pas besoin d’enregistrer ni de gérer le processus de réservation.
Types d'actions dans UFT/QTPRéutilisables, non réutilisables et externes
UFT/QTP Il prend en charge trois types d'actions, et le type que vous choisissez détermine si une action peut être partagée entre plusieurs scripts ou si elle reste privée au test dans lequel elle a été créée.
| type d'action | Là où il peut courir | Modifiable dans le test d'appel |
|---|---|---|
| Réutilisable | Même test, plusieurs fois, ou tout autre test | Oui, d'après le test qui en est propriétaire |
| Non réutilisable | Uniquement le test où il a été créé, et une seule fois. | Oui |
| Externe réutilisable | Appelée depuis un autre test en tant qu'action partagée et stockée | Non, en lecture seule ; seule sa copie locale de la table de données est modifiable. |
Une action réutilisable devient une action extérieure Dès qu'un autre test appelle cette action à la place du test qui la possède, l'accès reste en lecture seule dans le test appelant. En effet, une action partagée peut être utilisée simultanément par des dizaines de scripts, et permettre à chaque appelant de modifier les étapes risquerait de perturber le fonctionnement des autres. Vous pouvez toutefois paramétrer l'appel et travailler localement avec une copie de sa table de données.
En règle générale, une nouvelle action doit rester non réutilisable tant que sa logique est spécifique à un seul test. PromoVous pouvez le rendre réutilisable dès qu'un deuxième script a besoin des mêmes étapes, et vous pouvez vous attendre à ce qu'il se comporte comme une action externe en lecture seule dès que ce deuxième script l'appelle.
Comment fractionner, copier et appeler des actions dans UFT
À mesure qu'une action prend de l'ampleur, gardezping Regrouper toutes les étapes au même endroit rend le script plus difficile à déboguer et à réutiliser. UFT permet de scinder une action existante en deux lorsqu'elle devient difficile à gérer.
- Séparation indépendante (entre frères et sœurs) : L'action sélectionnée se divise en deux actions distinctes qui s'exécutent l'une après l'autre, chacune conservantping sa propre table de données locale.
- Division imbriquée (parent-enfant) : L'action sélectionnée se divise en une action parente dont la dernière étape appelle la seconde, l'action enfant, préservant ainsi une dépendance logique entre les deux.
Une fois les actions existantes, UFT propose trois façons d'intégrer une action dans un test à partir de insérer Menu:
- Insérer un appel à une nouvelle action : Crée une action vide et nouvelle à l'intérieur du test actuel.
- Insérer un appel à l'action : Copie intégralement une action existante, y compris les points de contrôle, la paramétrisation et l'onglet « Tableau de données », dans le test appelant. La copie est totalement indépendante : les modifications apportées à l'original n'affectent ni ne sont affectées par celui-ci. Vous pouvez copier des actions réutilisables et non réutilisables.
- Insérer un appel à une action existante : Insère un appel en lecture seule à une action réutilisable stockée dans un autre test. Cet appel ne peut être modifié que dans le test où il a été créé, ce qui garantit la synchronisation de tous les appelants et facilite la maintenance des suites de tests volumineuses.
Chaque appel se compile en un RunAction Déclaration dans l'avis d'expert :
' Calls Action2, which is stored in Test2, running it for one iteration RunAction "Action2[Test2]", oneIteration
L'action s'exécute autant de fois que le spécifient ses propriétés d'appel. Par exemple, si l'action 2 est configurée pour s'exécuter à chaque itération du tableau de données de Test2, mais que l'action appelante 1 dans Test1 ne s'exécute qu'une seule fois, l'action 2 ne s'exécutera également qu'une seule fois, car l'appel lui-même n'est déclenché qu'une seule fois.
Astuce : Lorsqu'un test contient plusieurs actions, ouvrez le Flux de test Utilisez le menu Affichage pour déplacer et réorganiser les éléments. Cela modifie l'ordre d'affichage. UFT exécute les actions sans modifier les étapes à l'intérieur de chaque action.
La vidéo ci-dessous s'appuie sur le script de connexion en cinq étapes créé dans des tutoriels précédents pour Réservation de vol et explique en détail la création, la division et l'appel d'actions de bout en bout. C'est la vidéo la plus longue de cette série. UFT/QTP série de tutorielsIl est donc utile de prendre des notes pendant le visionnage.
Cliquez à nouveau ici si la vidéo n'est pas accessible
Comment transmettre des paramètres et stocker les valeurs de sortie entre les actions
Au-delà de l'appel d'une action, la plupart des scripts réels doivent y transférer des données et en relire un résultat. UFT donne à chaque action ses propres paramètres d'entrée et de sortie, ainsi que plusieurs façons de conserver ce qu'elle renvoie.
Transmission de paramètres à une action et en provenance de celle-ci
Tout comme fonctions ou méthodes Dans les langages de programmation, une action peut définir une entrée et une sortie. paramètresCe paramètre n'a aucun lien avec Paramétrage des données de test Comme indiqué précédemment, les paramètres ici appartiennent à l'action elle-même, et non à une colonne de la table de données. Configurez-les à partir de Édition > Action > Propriétés de l'actionou en cliquant avec le bouton droit sur l'action dans la vue Mots clés. Transmettez les valeurs lors de l'appel en utilisant la syntaxe suivante :
' Passes an input value and captures the action's output into myResult RunAction "Action1", oneIteration, "testuser", myResult
Stockage de la valeur de sortie d'une action
Selon les besoins du reste du script, vous pouvez conserver la valeur renvoyée par une action à l'un des trois emplacements suivants :
- Une variable :
RunAction "Action1", oneIteration, "testuser", myResultstocke la sortie directement dansmyResult. - An variable d'environnement: créer une variable définie par l'utilisateur sous Fichier > Paramètres > Environnement, puis écrivez
RunAction "Action1", oneIteration, "testuser", Environment("env_var"). - Une colonne de tableau de données :
RunAction "Action1", oneIteration, "testuser", DataTable("A", dtGlobalSheet)inscrit le résultat directement dans la feuille globale.
Fiches de données globales et locales
Les actions permettent de lire et d'écrire des données de test via deux types de feuilles. Fiche technique globale est unique à l'ensemble du test ; toute action peut y lire ou y écrire, et il est toujours nommé « Global ». Fiche technique locale est unique pour chaque action, porte le nom de cette action, et seule l'action à laquelle elle est associée peut le lire ou l'écrire.
Sortie d'une action et contrôle de l'itération
Lorsqu'une étape doit interrompre une action prématurément plutôt que de la laisser se dérouler jusqu'à son terme, UFT fournit quatre déclarations :
ExitAction— arrête uniquement l'action en cours.ExitActionIteration— interrompt l'itération en cours de l'action et passe à la suivante.ExitRun— interrompt immédiatement l'exécution complète du test.ExitGlobalIteration— interrompt l'itération de test global en cours et passe à la suivante.
Lors de l'exécution d'un UFT/QTP scénario Dans les actions, tenez compte des itérations globales et locales, car elles influent sur le nombre d'exécutions d'une action. Vous pouvez modifier la fréquence de répétition d'une action appelée en ouvrant Propriétés de l'appel d'action > Exécuter onglet et définissez le mode d'itération à cet endroit.
⚠ Piège courant : Une action appelée, configurée pour s'exécuter à chaque itération locale mais déclenchée par une action parente qui ne s'exécute qu'une seule fois, ne s'exécutera qu'une seule fois. Vérifiez le nombre d'itérations globales de l'action parente et les propriétés d'appel de l'action enfant avant de supposer qu'une action appelée se répétera.
