testng process execution
Ce didacticiel explique différents types de processus d'exécution dans TestNG, à savoir l'exécution par lots, les lots contrôlés, le rapport d'exécution de test et l'exécution parallèle:
L'exécution de processus dans TestNG a tendance à vous faire gagner beaucoup de temps lors de l'exécution de scripts ou de suites de test.
Explorons!!
=> Visitez ici pour apprendre TestNG à partir de zéro.
Ce que vous apprendrez:
Pourquoi différentes méthodes d'exécution de processus?
Chaque fois que nous exécutons les scripts ou suites de test dans l'environnement Java Eclipse, nous devons appuyer sur le bouton Lecture pour chaque script de test qui doit être exécuté. C'est en effet un processus fastidieux et chronophage si l'on dispose d'un grand nombre de scripts ou de suites de test.
Pour surmonter cet inconvénient, TestNG a un concept de regroupement et d'exécution des scripts ou suites de test en fonction des différents types de processus d'exécution répertoriés ci-dessous.
- Exécution par lots
- Exécution contrôlée des lots
- Rapport d'exécution de test
- Exécution parallèle
Voyons en détail chaque exécution de processus.
Exécution par lots
- Il s'agit du processus d'exécution de tous les scripts ou suites de test dans un ordre séquentiel.
- Aucune intervention manuelle n'est nécessaire pour exécuter chaque suite de tests.
Exemple:
Conditions préalables:
- Créez un projet Selenium WebDriver avec le nom du projet TestNg_Demo.
- Installez le plugin TestNG dans eclipse.
Deux fichiers de scripts de test (User et UserOperations) ont été créés à l'aide des annotations TestNG et d'un fichier de script commun (Base_class) dans lequel l'ordre d'exécution est écrit.
Étape 1: User.java
Étape 2: UserOperations.java
Étape 3: Base_Class.java
Étape 4: Exécution des scripts de test dans Batch en cliquant avec le bouton droit sur le projet et en sélectionnant Exécuter en tant que TestNG Test.
Étape 5: Le fichier Xml sera généré dans le dossier de sortie de test avec le nom de fichier par défaut test.xml.
Étape 6: Ajoutez les méthodes de test qui appartiennent à un script ou à une suite de test particulier.
Étape 7: Cliquez sur le bouton Exécuter et la sortie sera affichée dans la fenêtre de la console comme indiqué ci-dessous.
Les scripts de test ont été exécutés avec succès à l'aide du traitement par lots.
Exécution contrôlée des lots
Il s'agit du processus d'exécution sélective d'un module particulier contenant un groupe de suites de tests ou de scripts.
Exemple:
qu'est-ce qu'un fichier .jnlp
Un module appelé UserOperations a été créé. Sous cela, nous avons trois utilisateurs appelés respectivement Créer, Modifier et Supprimer. Ici, nous allons effectuer une action en vérifiant le script CreateUser à l'aide de la classe Assert. Pour cela, nous définissons des dépendances pour modifier et supprimer des utilisateurs à l'aide de l'annotation de test «dependOnMethods».
Voyons comment vérifier les scripts et voir comment ses scripts dépendants correspondants sont gérés.
Étape 1: UserOperations. Java
Si Créer un script utilisateur est correctement vérifié, les autres scripts de dépendance seront exécutés. Ou sinon, les scripts échoueraient ou même sautaient.
Étape 2: Ajoutez les méthodes de test du module UserOperations dans le fichier test.xml par défaut.
Étape 3: Vérification des scripts de test.
#1) Si les messages attendus et réels sont égaux.
String expected = “create a user”; String actual = “create a user”; Assert.assertEquals (expected, actual);
La sortie correspondante sera affichée dans la fenêtre de la console comme indiqué ci-dessous.
#deux) Si les messages attendu et réel ne sont pas égaux.
String expected = “create a user”; String actual = “creating an user”; Assert.assertEquals (expected, actual);
La sortie correspondante sera affichée dans la fenêtre de la console.
est unix et linux identiques
Les scripts de test dans un module particulier (UserOperations) sont exécutés et vérifiés avec succès.
Rapport d'exécution de test
- La génération de rapport peut être effectuée à l'aide de TestNG qui nous aide à identifier le statut (réussite / échec / saut) de chaque méthode de test dans un groupe de scripts ou de suites.
- Le rapport de test sera généré au format .html.
Exemple:
Étape 1: Après avoir exécuté les scripts de test, actualisez le projet en cliquant avec le bouton droit de la souris et en sélectionnant l'option Actualiser. Un dossier de sortie de test sera généré automatiquement.
Étape 2: En développant le dossier, sous la suite par défaut, cliquez sur le fichier test.html par défaut.
Étape 3: Faites un clic droit et sélectionnez Ouvrir avec => Navigateur Web
Étape 4: Un rapport d'exécution de test affichant toutes les informations sur les méthodes de test dans un script sera généré.
Exécution parallèle
- C'est le processus qui consiste à exécuter plusieurs scripts de test en même temps. Cela nous aide à économiser nos efforts d'exécution et à couvrir le nombre maximum de tests.
- Nous pouvons également effectuer des tests multi-navigateurs qui rendront l'application plus stable.
- TestNG gère en interne les concepts de threads qui nous permettront d'exécuter le test dans plusieurs threads.
Exemple:
Dans TestNG, toutes les méthodes / classes @Test seront exécutées dans le même thread. Si nous voulons exécuter nos méthodes / classes dans des threads séparés, nous devons définir l'attribut «parallel» pour les méthodes / classes dans le fichier test.xml par défaut.
Étape 1: Configurez l’attribut «Parallèle» en tant que «méthodes» dans le fichier test.xml par défaut.
Étape 2: Parallel_Demo.java
Ici, nous exécutons deux méthodes de test en parallèle. Nous imprimons le Thread ID, sur lequel la méthode thread doit être exécutée en premier.
Étape 3: Cliquez sur le bouton Exécuter et la sortie sera affichée dans la console comme indiqué ci-dessous.
Le résultat ci-dessus montre les deux méthodes qui ont été exécutées à l'aide de différents threads. Le thread qui termine l'exécution d'une méthode choisira et exécutera l'autre méthode de test.
Conclusion
A travers ce tutoriel, nous avons compris les différents processus d'exécution de TestNG. Tout d'abord, nous avons commencé par créer un nouveau projet Selenium WebDriver à l'aide des annotations TestNG et nous sommes passés à différents types de processus d'exécution et avons finalement vérifié l'un des scripts de test à l'aide d'instructions Assert.
Ainsi, exécuter un grand nombre de scripts ou de suites de test en utilisant le traitement par lots est beaucoup plus facile et économise en effet notre temps d'exécution aussi. Ici, nous avons implémenté et exécuté le flux de processus de chaque type d'exécution pour une meilleure compréhension.
Bonne lecture!!
=> Regardez la série de formation Simple TestNG ici.
lecture recommandée
- 20 questions et réponses d'entrevue TestNG les plus populaires
- Assertions dans Selenium à l'aide des cadres Junit et TestNG
- Annotations et auditeurs TestNG
- Exemple TestNG: Comment créer et utiliser un fichier TestNG.xml
- Installation de TestNG, programme de base et rapports
- Tutoriel TestNG: Introduction à TestNG Framework
- Comment exécuter une exécution à grande échelle de tests Appium en parallèle
- Exécution des tests dans les tests logiciels: processus exact et plan avec l'exemple