Comment exécuter des cas de test ayant échoué dans TestNG: Selenium WebDriver

Table des matières:

Anonim

Dans ce didacticiel, vous apprendrez-

  • Créer un projet Selenium
  • Convertir et exécuter le projet Selenium en TestNG
  • Exécuter 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 projet Selenium

Préparez le projet

Étape 1) Dans Eclipse, créez un projet Java en cliquant sur nouveau projet Java

Étape 2) Dans cette étape,

  1. Donner le nom du projet
  2. Choisissez l'environnement d'exécution
  3. Sélectionnez l'option de mise en page du projet
  4. 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.

  1. Cliquez avec le bouton droit sur le projet et sélectionnez "Nouveau"
  2. Sélectionnez le package d'options

Étape 4) Dans cette étape,

  1. Parcourez le dossier src et sélectionnez le package
  2. Donnez le nom du package et
  3. 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,

  1. Maintenant, faites un clic droit sur le package nouvellement créé et
  2. Sélectionnez l'option "classe".

Une nouvelle fenêtre s'ouvrira.

Étape 6) Dans cette étape,

  1. Donnez le nom de la "classe"
  2. Sélectionnez les modificateurs
  3. Parcourez et sélectionnez la superclasse java.lang.object
  4. Cliquez sur le bouton Terminer.

Ici, vous créez deux classes ex: DemoA, DemoB .

Créez d'abord une démonstration de classe A.

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 du bouton ressemblera à ci-dessous -

Étape 7) Si vous avez installé la bibliothèque TestNG, cliquez simplement sur Projet Java ---> Propriétés.

Étape 8) Maintenant dans la fenêtre des propriétés,

  1. Cliquez sur Java Build Path
  2. Cliquez sur Bibliothèques
  3. Cliquez sur Ajouter une bibliothèque.

Suivant

  1. Cliquez sur "TestNg" puis
  2. Cliquez sur "Suivant".

Cliquez ensuite sur le bouton "Terminer".

Après cela, écrivez le code suivant.

Pour la démonstration de classe

Explication du code:

  • Driver.manage (). Window (). Maximiser ();

Cette ligne va agrandir 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 (Par.nom ("q")). sendKeys ("Salut");

Cette ligne va identifier le champ de recherche "Google" et saisir les données que vous avez envoyées en utilisant la méthode sendKeys.

Sortie: Le programme ci-dessus contient les erreurs, il n'est donc pas possible de s'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 projet Java et sélectionnez "Propriétés".

Étape 8) Dans la fenêtre des propriétés,

  1. Cliquez sur Java Build path dans le volet de navigation de gauche.
  2. Cliquez sur l'onglet bibliothèques,
  3. Cliquez sur Ajouter des JAR externes et sélectionnez le fichier JAR Selenium-standalone
  4. Cliquez sur le bouton "OK".

Après cette étape, toutes les erreurs seront supprimées automatiquement. Sinon, placez la souris sur le code qui affiche des erreurs et importez toutes les classes et interfaces nécessaires.

Pour @test s'il affiche toujours des erreurs, placez la souris là-bas. Il montrera les options possibles. Cliquez ensuite sur l'option Ajouter la bibliothèque TestNG. De même, faites-le pour d'autres «classes» également.

Après avoir écrit votre code dans les deux classes, c'est-à-dire DemoA, DemoB passe à l'étape suivante.

Étape 9) Dans cette étape,

  1. Faites un clic droit sur le projet et
  2. Sélectionnez le dossier d'options pour créer un dossier appelé 'lib' et collez le fichier jar testNG et le fichier jar sélénium (selenium-server-standalone ).

    (Le fichier jar Testng et Selenium-server-standalone doit être téléchargé à partir du Web et le stocker dans votre système. Vous devez vous rendre manuellement dans ce dossier et copier ces deux fichiers et cliquer avec le bouton droit sur le dossier 'lib' présent dans eclipse et cliquer sur pâte)

Étape 10) Dans cette étape,

1. Sélectionnez le dossier parent

2. Donnez le nom du dossier comme «lib» et (Le but 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 depuis eclipse, ce dossier lib n'est pas du tout requis)

3. Cliquez sur le bouton «Terminer»

Le fichier jar Testng et Selenium-server-standalone doit être téléchargé à partir du Web et stocké dans votre système. Vous devez aller manuellement dans ce dossier et copier ces deux jars et faire un clic droit sur le dossier 'lib' présent dans eclipse et cliquer sur coller

Après avoir créé un dossier, la prochaine étape consistera à convertir nos programmes DemoA et DemoB en fichier Testng.xml.

Convertir et exécuter le projet Selenium en TestNG

Étape 1) Dans cette étape,

  1. Sélectionnez deux fichiers java présents sous le package et faites un clic droit.
  2. Sélectionnez l'option appelée «testNG».
  3. Cliquez sur convertir en "testNG".

Étape 2) Une nouvelle fenêtre s'ouvrira. Dans cette fenêtre, entrez des détails comme

  1. Lieu
  2. Nom de la suite
  3. Nom du test
  4. Sélection de classe
  5. Mode parallèle
  6. 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, cliquez avec le bouton droit sur ce fichier testng.xml présent dans le volet de navigation de gauche de 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 voulez 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 en utilisant 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 l'éclipse, si vous souhaitez exécuter le même fichier de la 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 du projet.

Exécuter TestNG via la ligne de commande

Vous devez trouver l'emplacement de l'espace de projet

Étape 1) Cliquez d'abord avec le bouton droit sur le projet Java et sélectionnez l'option Propriétés. Dans la fenêtre des propriétés, sélectionnez l'option ressource.

Étape 2) Maintenant, 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: \ Users \ User \ 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 Eclipse, commencez par actualiser 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) Ensuite, vous pourrez voir le dossier de sortie de test. Dans ce dossier, vous avez un fichier avec le nom 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 "testNG suite".

Supposons que si vous avez trois cas de test, si tous les cas 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 si l'un des cas 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 les cas de test ayant échoué dans l'invite de commande. Ouvrez l'invite de commande et accédez à l'espace de travail du projet.

L'espace de travail de mon projet est C: \ Users \ User \ 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 ne correspond qu'à cette classe.

Dans la classe ci-dessus, c'est-à-dire DemoB, changez simplement le code comme ceci.

driver.findElement (Par.nom ("a")). sendKeys ("Au revoir"); 

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, donc notre programme arrêtera d'exécuter le code restant. Pour cette raison, le ClassB échouera.

Résumé :

  • TestNG est Automation Testing Framework qui est inspiré de Junit et contient différentes annotations.
  • TestNG génère les rapports dans son rapport standard, qui contient les éléments suivants:
    • Combien de cas de test y a-t-il?
    • Combien de cas de test sont réussis?
    • Combien de cas de test ont échoué?
    • Combien de cas de test sont ignorés?
  • Plusieurs cas de test peuvent être facilement regroupés 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 cas de test, l'exécution du même cas de test plusieurs fois en utilisant le nombre d'appels.
  • Si l'un des cas de test échoue lors de l'exécution de plusieurs cas de test, vous pouvez exécuter ce cas 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

Cet article est une contribution de Sandeep Batageri