web-dev-qa-db-fra.com

Quel est test harnais?

J'ai quelques difficultés à comprendre le harnais de test et les termes courants associés tels que cas de test, scripts de test dans les tests d'automatisation.

Voici donc ce que j’avais eu jusqu’à présent: Les tests automatisés consistent à utiliser un logiciel spécial (autre que le logiciel testé) pour contrôler l’exécution des tests et comparer les résultats réels aux résultats attendus. Cela implique également la mise en place de conditions préalables aux tests. Ce type de test est le plus approprié pour les tests fréquemment effectués.

Maintenant, j'ai quelques problèmes avec le harnais de test. J'ai lu qu'il se composait d'une suite de tests de scénarios de test, de fichiers d'entrée, de fichiers de sortie et de scripts de test ..___ Maintenant, ma question est quelle est la différence entre le scénario de test et le script de test? De plus, comment utilisez-vous le logiciel pour tester les différentes fonctions de l’AUT? Je suis également tombé sur des termes tels que Suite Master et agents de cas. 

51
coffeeak

Plusieurs questions générales vont tenter de répondre en fonction de mon expérience.

Pensez à un test Harness en tant que "facilitateur" qui effectue tout le travail de (1) exécution de tests en utilisant une (2) bibliothèque de tests et (3) générer des rapports . Il faudrait que vos scripts de test soient conçus pour gérer différents (4) données de test et (5) scénarios de test. . Essentiellement, lorsque le harnais de test est en place et que les données préalables sont préparées (aka préparation des données ), quelqu'un devrait pouvoir cliquer sur un bouton ou exécuter une commande pour exécuter tous vos tests et générer rapports.

Un harnais de test est très probablement une collection de choses différentes qui font que tout ce qui précède se produit. Si vous avez écrit des tests unitaires lors du développement de votre application, cela ferait partie d'un faisceau de tests. Vous auriez également d'autres tests pour les fonctionnalités de votre application, tels que: l'utilisateur se connecte au site, voit le panneau des favoris, les messages récents et les notifications. Ensuite, vous ajoutez un "coureur" qui passe par tous vos " scripts de test " et les exécute (à la place de vous avoir à exécuter des tests un à la fois) . Si vous avez l’impression que le harnais de test est davantage une collection conceptuelle que un logiciel, alors vous comprenez bien ceci :-)

Ma question est la suivante: quelle est la différence entre le scénario de test et le scénario de test?

Réponse simple mais pas tout à fait correcte: Un cas de test définit les objectifs, la description, les conditions préalables, les étapes (descriptives ou spécifiques) du test, les résultats attendus. Un script de test serait alors le script automatisé que vous exécutez pour effectuer ce test. C'est dans un contexte d'automatisation. Et ça change. Beaucoup.

Les certifications telles que ISTQB définissent comme des scénarios de test sont généralement appelées des cas de test dans certaines entreprises et certains pays. Dans d'autres cas, les scénarios de test sont inversés avec les scripts de test lorsqu'ils font référence à un test manuel (lorsque les étapes sont détaillées, mais ne font pas partie d'un faisceau d'automatisation). D'autres disent que les scripts de test sont exclusivement des tests automatisés. D'autre part, on peut également affirmer que plusieurs scénarios de test peuvent être combinés dans un script de test et inversement. Cela pose donc la question suivante: comment s'intègre une procédure de test ?

Une étape développement du test peut avoir: "Procédures de test, scénarios de test, cas de test, jeux de données de test, scripts de test à utiliser dans les logiciels de test."

Si vous supposez une relation > (est plus grande que/collection de) , comment les rapportez-vous? Question rhétorique - cela varie en fonction de votre lieu de travail, de votre client, etc. Le mieux est de le définir avec vos collègues/clients et de convenir de la compréhension des termes plutôt que de la définition. . J'utilise actuellement le script de test = script automatisé, basé sur un scénario de test manuel préexistant ou un scénario de test.

Aussi, comment utilisez-vous le logiciel pour tester les différentes fonctions de l’AUT?

Vous écrivez différents tests pour tester différentes choses. Chaque test effectue certaines actions et vérifie si la sortie de l'AUT correspond à ce que vous attendiez - If displayed_value == expected_value. Un fichier d'entrée peut par exemple être utilisé pour fournir des données à la liste de tests des noms d'utilisateur et des mots de passe de test. Ou exécutez le même test avec des données différentes - connectez-vous en tant qu'utilisateur différent avec des messages différents, etc.

Jetez un coup d'oeil à RobotFramework et au Selenium . Un test de structure de robot (écrit en fichiers texte ou html) associé à la bibliothèque Selenium vous permettrait d'écrire un test automatisé qui teste quelque chose de spécifique ... comme une validation de page d'accueil. Vous écririez un test séparé pour vous assurer qu'un utilisateur peut voir tous ses messages. Un autre pour tester les notifications d'effacement. Etc.

58
aneroid

test harness : environnement de test composé de stubs et de pilotes nécessaires à l'exécution d'un test.

Des faisceaux de test et des talons seront utilisés pour reproduire les éléments manquants (composants non encore inclus dans les tests ou les systèmes externes) . Souvent, lorsque des tests d’intégration à petite échelle sont effectués sur plusieurs modules ou composants, il est nécessaire de improvisez des méthodes et des outils pour transférer les données de test aux composants testés. Ceci est souvent appelé un test harnais. En raison de la nécessité de comprendre les détails techniques nécessaires à la création d'un faisceau de tests, ces tests sont presque toujours effectués par l'équipe de développement.

Un faisceau de test peut faciliter le test de composants ou d'une partie d'un système en simulant l'environnement dans lequel cet objet de test s'exécutera. Cela peut être fait soit parce que d'autres composants de cet environnement ne sont pas encore disponibles et sont remplacés par des stubs et/ou des pilotes, ou simplement pour fournir un environnement prévisible et contrôlable dans lequel toutes les fautes peuvent être localisées sur l'objet à tester. Ce sont généralement des programmes sur mesure générés par les développeurs pour faciliter le processus de test. S'ils sont utilisés dans une organisation mature, il est fort possible que ces faisceaux soient considérés comme des «actifs de test» et soient soumis au contrôle de version et à la gestion de la configuration.

13
Angel Tsvetkov

Test harnesses contient toutes les informations nécessaires à la compilation et à l'exécution d'un test. Cela inclut les scénarios de test, les fichiers source à tester, les stubs et les paramètres de configuration TDP (Target Deployment Port).

1
Azad Ansari

Un harnais de test regroupe tous les éléments nécessaires pour tester le logiciel au niveau de l'unité, du module, de l'application ou du système et fournit le mécanisme permettant d'exécuter le test. Chaque élément tel que les données d'entrée, les paramètres de test, le scénario de test, le script de test, les données de sortie attendues, l'outil de test et le rapport de résultat de test fait partie du faisceau de tests. 

0
arimen