what is test harness
Je ne suis pas un grand fan des labels. Voici ce que je veux dire par là.
Si je dois vérifier quelques aspects avant de déterminer si le contrôle qualité peut être lancé ou non, je ferai simplement une liste et effectuerai l'action. À mon avis, peu importe que je l'appelle officiellement une opération «Test de préparation aux tests» ou non - tant que je fais ce que je suis censé faire, je pense qu'il n'est pas nécessaire de l'appeler un nom ou une étiquette spécifique .
Mais je suis corrigé. Récemment, dans ma classe, j'enseignais le modèle Agile-scrum pour le développement logiciel. Il y avait un question ' comment les tests sont-ils effectués dans une méthode Agile? «J'expliquais deux méthodes - l'une est où nous essayons de l'inclure dans chaque sprint et l'autre est une meilleure pratique que j'ai apprise de la mise en œuvre de première main - qui consiste à retarder un sprint QA par rapport à celui de développement.
Un de mes élèves m'a demandé s'il y avait un nom pour le second et je ne l'ai pas fait parce que je n'ai jamais mis l'accent sur les noms eux-mêmes.
Mais à ce moment-là, j'ai senti à quel point il était important d'étiqueter un processus de manière appropriée pour m'assurer que nous avions un terme pour désigner le processus dont nous parlons.
Par conséquent, aujourd'hui, nous allons faire exactement cela: Apprenez le processus derrière le terme «Test Harness».
Comme je l'ai mentionné précédemment dans certains de mes articles précédents: beaucoup de choses peuvent être comprises à partir de la signification littérale du nom. Alors, vérifiez dans votre dictionnaire ce que signifie «Harnais» et la grande révélation de savoir si oui ou non, il s'applique, dans ce cas, est quelque chose que nous verrons à la fin.
Il existe deux contextes dans lesquels Test harnais est utilisé:
- Test d'automatisation
- Test d'intégration
Commençons par le premier:
Ce que vous apprendrez:
- Contexte n ° 1: faisceau de tests dans l'automatisation des tests
- Contexte n ° 2: faisceau de tests dans les tests d'intégration
- En conclusion:
- lecture recommandée
Contexte n ° 1: Faisceau de tests dans l'automatisation des tests
Dans la tests d'automatisation monde, Le harnais de test fait référence au framework et aux systèmes logiciels qui contiennent les scripts de test, les paramètres nécessaires (en d'autres termes, les données) pour exécuter ces scripts, recueillir les résultats des tests, les comparer (si nécessaire) et surveiller les résultats.
Je vais essayer de rendre cela plus simple à l'aide d'un exemple.
Exemple:
Si je parlais d'un projet qui utilise Professionnel de test rapide HP (maintenant UFT) pour les tests fonctionnels, HP ALM est lié pour organiser et gérer tous les scripts, exécutions et résultats et les données sont sélectionnées à partir d'une base de données MS Access - Ce qui suit serait le faisceau de test pour ce projet:
quel est le meilleur compte de messagerie
- Le logiciel QTP (UFT) lui-même
- Les scripts et l'emplacement physique où ils sont stockés
- Les ensembles de test
- MS Access DB pour fournir les paramètres, les données ou les différentes conditions à fournir aux scripts de test
- HP ALM
- Les résultats des tests et les attributs de surveillance comparative
Comme vous pouvez le voir, les systèmes logiciels (automatisation, gestion des tests, etc.), les données, les conditions, les résultats - tous deviennent partie intégrante du faisceau de tests - la seule exclusion étant l'AUT lui-même.
Contexte # 2: Test Harness dans les tests d'intégration
Il est maintenant temps d'explorer ce que signifie Test harnais dans le contexte de 'Test d'intégration' .
Les tests d'intégration consistent à assembler deux ou modules (ou unités) de code qui interagissent les uns avec les autres et à vérifier si le comportement combiné est ou non comme prévu.
Dans l'idéal, les tests d'intégration de deux modules devraient et seraient possibles lorsqu'ils sont tous deux prêts à 100%, testés unitairement et prêts à l'emploi.
Cependant, nous ne vivons pas dans un monde parfait - ce qui signifie qu'un ou plusieurs modules / unités de code qui doivent être les éléments constitutifs du test d'intégration peuvent ne pas être disponibles. Pour résoudre cette situation, nous avons des stubs et des pilotes.
Stud est généralement un morceau de code qui est limité dans sa fonction et remplacera ou remplacera le module de code réel qui doit prendre sa place.
Exemple: Pour expliquer cela plus en détail, permettez-moi d'utiliser un scénario
S'il y a une unité A et une unité B à intégrer. En outre, cette unité A envoie des données à l'unité B ou en d'autres termes, l'unité A appelle l'unité B.
L'unité A si 100% disponible et l'unité B ne l'est pas, alors le développeur peut écrire un morceau de code dont la capacité est limitée (ce que cela signifie est l'unité B si elle a 10 fonctionnalités, seulement 2 ou 3 qui sont importantes pour l'intégration avec A) sera développé et utilisé pour l'intégration. C'est ce qu'on appelle un BOUT.
L'intégration serait désormais: Unité A-> Stub (en remplacement de B)
D'autre part, si l'unité A est disponible à 0% et l'unité B est disponible à 100%, la simulation ou le proxy doit être l'unité A ici. Par conséquent, lorsqu'une fonction appelante est remplacée par un code auxiliaire, elle est appelée CHAUFFEUR .
L'intégration, dans ce cas, serait : PILOTE (en remplacement de A) -> Unité B
L'ensemble du cadre: Le processus de planification, de création et d'utilisation de stubs et / ou de pilotes pour effectuer les tests d'intégration est appelé le faisceau de tests.
Remarque : l'exemple ci-dessus est limité et le scénario en temps réel pourrait ne pas être aussi simple ou aussi simple que celui-ci. Les applications en temps réel ont des points d'intégration complexes et composites.
En conclusion:
Comme toujours, STH estime que même les définitions les plus techniques peuvent être dérivées du sens simple et littéral du terme.
Le dictionnaire sur mon smartphone me dit qu'un 'Harnais' est (regardez sous le contexte du verbe):
«Mettre sous conditions d'utilisation efficace; prendre le contrôle pour une fin particulière; '
En suivant ceci et en l'adaptant aux tests:
«Un harnais de test consiste simplement à créer le cadre approprié et à l'utiliser (et tous ses éléments constitutifs) pour contrôler l'ensemble de l'activité afin de tirer le meilleur parti de la situation - que ce soit l'automatisation ou l'intégration. '
Là, nous reposons notre cas.
Quelques autres choses avant de terminer:
Q. Quels sont les avantages d'un harnais de test?
Maintenant, pourriez-vous demander quelle est l’importance de la respiration pour la vie humaine - elle est intrinsèque, n’est-ce pas? De même, un cadre pour tester efficacement est comme un donné. L'avantage, si nous devons l'épeler en autant de mots - je dirais que chaque processus de test a un harnais de test, que nous disions consciemment que c'est «le harnais de test» ou non. C'est comme voyager en connaissant l'itinéraire, la destination et toutes les autres dynamiques du voyage.
Q. Quelle est la différence entre le faisceau de test et le cadre de test ?
Je pense personnellement que la comparaison et le contraste ne sont pas souvent la bonne approche pour comprendre des concepts connexes car les lignes sont souvent floues. Pour répondre à cette question, je dirais que le harnais de test est spécifique et le cadre de test est générique. Par exemple, un faisceau de test inclura les informations exactes de l'outil de gestion de test jusqu'aux identifiants de connexion à utiliser. Un cadre de test, en revanche, dira simplement qu'un outil de gestion de test effectuera les activités respectives.
Q. Existe-t-il des outils de harnais de test ?
Le harnais de test comprend des outils - comme un logiciel d'automatisation, un logiciel de gestion de test, etc. Tous ou tous les outils peuvent faire partie de Test Harness: QTP, JUnit, HP ALM - tous peuvent être des outils constitutifs de n'importe quel Test Harness.
A propos de l'auteur: Cet article est écrit par Swati S., membre de l'équipe STH.
Et, toujours avec des définitions, il y a toujours des divergences d'opinions. Nous apprécions vos opinions et aimons entendre ce que vous pensez. N'hésitez pas à laisser un commentaire, des questions ou une suggestion ci-dessous.
lecture recommandée
- Test de charge avec les didacticiels HP LoadRunner
- Conseils de test de logiciel pour les testeurs novices
- Meilleurs outils de test de logiciels 2021 (Outils d'automatisation des tests QA)
- Les différences entre les tests unitaires, les tests d'intégration et les tests fonctionnels
- Les testeurs perdent-ils leur emprise sur les tests en raison de l'automatisation?
- L'entreprise mondiale de tests de logiciels atteindra bientôt 28,8 milliards de dollars
- Comment garder la motivation vivante chez les testeurs de logiciels?
- Téléchargement de l'e-book 'Testing Primer'