Comment exécuter des cas de test ayant échoué dans TestNG
Dans ce tutoriel, vous apprendrez-
- Créer un Selenium Projet
- Convertir et exécuter Selenium Projet à TestNG
- Exécution TestNG via la ligne de commande
- Comment exécuter uniquement les cas de test ayant échoué
- Exécution du fichier testng-failed.xml à partir de la ligne de commande
Créer un Selenium Projet
Préparer le projet
Étape 1) In Eclipse, Créer Java projet en cliquant sur nouveau Java Projet
Étape 2) Dans cette étape,
- Donnez le nom du projet
- Choisir l'environnement d'exécution
- Sélectionnez l'option de mise en page du projet
- Cliquez sur le bouton « Terminer ».
Lorsque vous cliquez sur le bouton Terminer. Le projet java « TestProject » est créé. Le « TestProject » ressemblera à ceci.
Étape 3) Ouvrez ce projet nouvellement créé. Vous pourrez voir le dossier « src » dans l’Explorateur de packages.
- Faites un clic droit sur le projet et sélectionnez « Nouveau »
- Sélectionnez le pack d'options
Étape 4) Dans cette étape,
- Parcourez le dossier src et sélectionnez le package
- Donnez le nom du package et
- Enfin, cliquez sur le bouton Terminer. (Nom du package->com.test)
Après avoir cliqué sur « Terminer », la structure du projet ressemblera à ceci :
Étape 5) Dans cette étape,
- Maintenant, faites un clic droit sur le package nouvellement créé et
- Sélectionnez l’option « classe ».
Une nouvelle fenêtre s'ouvrira.
Étape 6) Dans cette étape,
- Donnez le nom de la « classe »
- Sélectionnez les modificateurs
- Parcourez et sélectionnez la superclasse java.lang.object
- Cliquez sur le bouton Terminer.
Ici, vous créez deux classes ex : DémoA, DémoB.
Créez d’abord une classe DemoA.
Lorsque vous cliquez sur le bouton « Terminer ». Ensuite, il va créer une classe comme celle-ci :
De même, créez la classe DemoB. Lorsque vous cliquez sur le bouton « Terminer », la classe ressemblera à ci-dessous :
Étape 7) Si vous avez installé TestNG bibliothèque, cliquez simplement sur Java Projet—>Propriétés.
Étape 8) Maintenant dans la fenêtre des propriétés,
- Cliquez sur Java Chemin de construction
- Cliquez sur Bibliothèques
- Cliquez sur Ajouter une bibliothèque.
Suivant
- Cliquez sur « TestNg » puis
- Cliquez sur «Suivant».
Cliquez ensuite sur le bouton « Terminer ».
Après cela, écrivez le code suivant.
Pour la démo de classeA
Explication du code :
- Driver.manage().window().maximize();
Cette ligne va maximiser la fenêtre du navigateur.
- driver.get(https://www.google.co.in);
Cette ligne entrera l'URL spécifiée dans le champ URL.
- driver.findElement(By.name("q")).sendKeys("Salut");
Cette ligne identifiera le champ de recherche « Google » et saisira les données que vous avez envoyées à l'aide de la méthode sendKeys.
Résultat : Le programme ci-dessus contient les erreurs, il n'est donc pas possible de l'exécuter.
De même pour la classe DemoB,
Les mots soulignés en rouge sont les erreurs ici. Parce que vous n'avez pas encore ajouté le fichier jar qui contient ces classes et interfaces. Afin de supprimer les erreurs présentes dans le code ci-dessus, ajoutez le fichier jar correspondant. Faites un clic droit sur le Java Projetez et sélectionnez « Propriétés ».
Étape 8) Dans la fenêtre des propriétés,
- Cliquez sur Java Créez un chemin dans le volet de navigation de gauche.
- Cliquez sur l'onglet bibliothèques,
- Cliquez sur Ajouter des JAR externes et sélectionnez le Selenium-fichier jar autonome
- Cliquez sur le bouton « OK ».
Après cette étape, toutes les erreurs seront automatiquement supprimées. Sinon, placez la souris sur le code qui affiche des erreurs et importez toutes les classes et interfaces nécessaires.
Pour @test, si des erreurs continuent à s'afficher, placez la souris dessus. Les options possibles s'afficheront. Cliquez ensuite sur Ajouter TestNG Option bibliothèque. Faites-le de même pour les autres « classes ».
Après avoir écrit votre code dans les deux classes, c'est-à-dire DemoA, DemoB, passez à l'étape suivante.
Étape 9) Dans cette étape,
- Faites un clic droit sur le projet et
- Sélectionnez le dossier d'options pour créer un dossier appelé « lib » et collez le fichier jar testNG et le fichier jar selenium (selenium-server-standalone ).(Test et Selenium-le fichier jar du serveur autonome doit être téléchargé à partir du Web et stocké dans votre système. Vous devez accéder manuellement à ce dossier et copier ces deux jars et faire un clic droit sur le dossier « lib » présent dans Eclipse et cliquer sur coller)
Étape 10) Dans cette étape,
1. Sélectionnez le dossier parent
2. Donnez le nom du dossier comme 'lib' et (L'objectif principal de l'ajout de ces deux fichiers jar dans le dossier lib est que, lors de l'exécution à partir de l'invite de commande, vous pouvez indiquer au compilateur que les fichiers jar requis pour l'exécution du programme sont présents à cet emplacement. Si vous souhaitez exécuter testng.xml à partir d'Eclipse, ce dossier lib n'est pas du tout requis)
3. Cliquez sur le bouton « Terminer »
Test et Selenium-Le fichier jar du serveur autonome doit être téléchargé à partir du Web et stocké dans votre système. Vous devez accéder manuellement à ce dossier et copier ces deux jars, puis faire un clic droit sur le dossier « lib » présent dans Eclipse et cliquer sur Coller
Après avoir créé un dossier, l'étape suivante consistera à convertir nos programmes DemoA et DemoB en fichier Testng.xml.
Convertir et exécuter Selenium Projet à TestNG
Étape 1) Dans cette étape,
- Sélectionnez deux fichiers Java présents sous le package et faites un clic droit.
- Sélectionnez l'option appelée « testNG ».
- Cliquez sur convertir en « testNG ».
Étape 2) Une nouvelle fenêtre s'ouvrira. Dans cette fenêtre, entrez des détails tels que
- Destination
- Nom de la suite
- Nom du test
- Sélection de classe
- Mode parallèle
- Cliquez sur le bouton « Terminer »
Ensuite, le fichier testng.xml créé sous le projet Java, et il ressemblera à ceci.
(si vous souhaitez exécuter ce fichier testng.xml, faites un clic droit sur ce fichier testng.xml présent dans le volet de navigation de gauche dans l'Explorateur de packages et cliquez sur Exécuter en tant que TestNG Suite. )
Étape 3) Le fichier de la suite testng.xml ressemblera à ceci :
Si vous souhaitez d'abord exécuter la classe DemoA, supprimez cette ligne complète et ajoutez-la avant la classe DemoB comme ceci :
Étape 4) Après avoir exécuté le fichier testng.xml, il affichera le résultat de la manière suivante. (Puisque vous n'avez écrit aucune instruction exécutable à l'aide de System.out.println(), il n'imprime donc rien sur la fenêtre de la console).
C'est l'une des façons dont vous exécuterez le test via Eclipse, si vous souhaitez exécuter le même fichier de suite testng.xml qui contient deux fichiers de classe tels que DemoA, DemoB à partir de l'invite de commande, vous devez suivre les étapes ci-dessous.
Ouvrez maintenant l'invite de commande et accédez à l'espace de travail Projet.
Exécution TestNG via la ligne de commande
Vous devez trouver l'emplacement de l'espace de projet
Étape 1) Faites d'abord un clic droit sur Java Projetez et sélectionnez l’option Propriétés. Dans la fenêtre des propriétés, sélectionnez l'option ressource.
Étape 2) Désormais, lorsque vous cliquez sur le lien « ressource », présent dans le volet de navigation de gauche. Il montrera où exactement le projet est stocké
L'espace de travail du projet est C:\Utilisateurs\Utilisateur\Desktop\Guru99\TestProject. Vous changez donc de répertoire vers cet emplacement particulier.
Étape 3) Tapez ensuite la commande suivante. (Cette commande est une commande générique)
java –cp « chemin du dossier lib présent dans l'espace de travail\* ; chemin du dossier bin présent dans l'espace de travail du projet ; chemin du fichier testng.jar présent dans le dossier lib de l'espace de travail du projet » org.testng.TestNG testng.xml
mais pour notre projet, vous devez écrire la commande suivante.
Java –cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*; C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG testng.xml
Étape 4) Appuyez ensuite sur Entrée. Les classes DemoA et DemoB commenceront leur exécution. Enfin, il affichera le résultat sur l’invite de commande.
Comment exécuter uniquement les cas de test ayant échoué
Si vous souhaitez exécuter uniquement les cas de test ayant échoué via le Eclipse, puis actualisez d'abord le projet.
Étape 1) Faites un clic droit sur le projet Java (Démo A et B).
Sélectionnez l'option d'actualisation ou sélectionnez simplement le projet Java et appuyez sur F5.
Étape 2) Vous pourrez ensuite voir le dossier de sortie du test.
Dans ce dossier, vous avez un fichier nommé testng-failed.xml.
Étape 3) Faites un clic droit sur ce fichier et cliquez sur Exécuter en tant que et sélectionnez l'option appelée « suite testNG ».
Supposons que si vous avez trois scénarios de test, si tous les scénarios de test sont exécutés avec succès, cela signifie que vous ne pouvez pas voir ce dossier sous le dossier de sortie de test. Ce dossier n'apparaîtra que lorsque l'un des scénarios de test échoue. Ensuite, exécutez ce fichier, il n'exécutera que les cas de test ayant échoué.
Exécution du fichier testng-failed.xml à partir de la ligne de commande
Étape 1) Pour exécuter des cas de test ayant échoué dans l’invite de commande. Ouvrez l'invite de commande et accédez à l'espace de travail Projet.
Mon espace de travail de projet est C:\Utilisateurs\Utilisateur\Desktop\Guru99\TestProject. Vous allez donc changer de répertoire vers cet emplacement particulier.
Étape 2) Tapez la commande suivante. (Cette commande est une commande générique)
java –cp « chemin du dossier lib présent dans l'espace de travail\* ; chemin du dossier bin présent dans l'espace de travail du projet ; chemin du fichier testing.jar présent dans le dossier lib de l'espace de travail du projet » org.testng.TestNG test-output/testng-failed.xml
Pour notre projet, vous devez écrire la commande suivante.
Java –cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*; C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG test-output/testng-failed.xml
Étape 3) Appuyez ensuite sur Entrée. Il n'exécutera que les classes ayant échoué et l'affichage correspond uniquement à cette classe.
Dans la classe ci-dessus, c'est-à-dire DemoB, changez simplement le code comme ceci.
driver.findElement(By.name("a")).sendKeys("Bye");
Le code ci-dessus ne trouvera aucun élément. Donc, cela lèvera l'exception. Mais dans notre programme, vous ne gérez pas l'exception, notre programme arrêtera donc d'exécuter le code restant. Pour cette raison, la ClassB va échouer.
Résumé
- TestNG est un framework de tests d'automatisation inspiré de Junit et contenant différentes annotations.
- TestNG génère les rapports dans son rapport standard, qui contient les éléments suivants :
- Combien y a-t-il de cas de test ?
- Combien de cas de test sont réussis ?
- Combien de cas de test échouent ?
- Combien de cas de test sont ignorés ?
- Plusieurs cas de test peuvent être regroupés facilement et exécutés en convertissant les classes de test en fichier de suite de tests.
- TestNG peut être facilement intégré à d’autres outils tiers. Il fournit différentes fonctionnalités telles que l'attribution de la priorité aux scénarios de test, l'exécution du même scénario de test plusieurs fois en utilisant le nombre d'appels.
- Si l'un des scénarios de test échoue lors de l'exécution de plusieurs scénarios de test, vous pouvez exécuter ce scénario de test spécifique séparément.
- La méthode statique « log » de la classe Reporter peut être utilisée pour stocker les informations de journalisation présentes dans org.testng.