Vous pourriez avoir exécuté de nombreux tests en utilisant diverses fonctions de test et pourriez ne jamais considérer un test «passé» ou «échoué» pendant ces exécutions. Il est temps d'exécuter certains tests réels à l'aide de Selenium WebDriver dans Testng maintenant que nous connaissons tous les principes clés de Testng. Nous profiterons des affirmations de testng pour cet objectif. Cet article effectue la mise en œuvre des méthodes d'affirmation et décrit les avantages de l'affirmation douce et dure du code. Dans ce tutoriel, nous exécutons deux cas: affirmations simples et affirmation dure et douce. Ce contenu décrit l'utilisation de l'affirmation douce par rapport à l'affirmation dure. Avant d'écrire le script, nous avons tendance à installer Java JDK et Eclipse, ajouter des bibliothèques de pots de sélénium et configurer les dépendances avec les pilotes de navigateur.
Exigences:
Avant d'écrire du code, vous devez créer un environnement de développement pour l'exécution et l'exécution du code. Tout d'abord, installez et configurez le kit JDK et l'éclipse. Après cela, vous devez télécharger et inclure le fichier JAR TESTNG dans votre installation Eclipse pour utiliser l'affirmation dans le pilote Web. Vous pouvez obtenir des fichiers JAR TESTNG à partir du lien donné: https: // mvnRepository.com / artefact / org.testng / testng. Ensuite, ajoutez les fichiers JAR dans la bibliothèque Eclipse par le processus suivant: Accédez à l'option Project => Build and Configurer> Java Build Path> Libraries pour ajouter les pots externes téléchargés. Maintenant, ajoutez les dépendances dans l'éclipse> pom.fichier xml.
Io.github.bonigarcia webdrivermanager 5.3.1 test org.apache.maven artifact de maven 4.0.0-alpha-2
Affirmation de testng avec un exemple:
Dans ce tutoriel, nous couvrirons deux cas:
Cas 1:
Nous passons par des méthodes d'affirmation de base pour vérifier.
Étape n ° 1: Créez une classe de vide
Pour appliquer une affirmation, nous devons créer une classe distincte «vide public» et effectuer des tests d'affirmation à l'intérieur de cette classe contrairement aux autres propriétés de sélénium des tests d'automatisation en utilisant la classe statique principale.
public void titlest ()
Étape # 2: Configuration du webdriver
Dans cette étape, nous allons configurer le pilote du navigateur via le script suivant, que le navigateur Chrome a utilisé pour ce tutoriel. Le code de script suivant utilise:
Webdrivermanager.chromedriver ().installation();
Chromedriver Driver = new ChromEdriver ();
Étape # 3: Ouvrez le navigateur
Dans cette étape, le navigateur Chrome ouvrira l'URL du site Web donné. Comme dans cet exemple, utilisez https: // www.eBay.com / site.
Utilisez la méthode de script suivante:
conducteur.get ("https: // www.eBay.com / ");
Il peut être vu dans la figure ci-dessous que Chrome est contrôlé par un logiciel de test automatisé.
Étape n ° 4: Recherche du titre du site
Dans cette étape, le navigateur Chrome ouvrira l'URL du site Web donné. Comme dans cet exemple, utilisez https: // www.eBay.com / site.
Inspectez la page Web et trouvez le titre du site Web. Comme indiqué dans la figure ci-dessous.
Électronique, voitures, mode, objets de collection et plus encore | eBay
Voici la syntaxe:
Variable de chaîne = "Title"
Le titre est une chaîne qui crée la chaîne variable.
Étape n ° 5: Définissez le titre attendu
Dans cette étape, le titre copié de la page Web sera utilisé pour créer une chaîne pour le titre attendu.
Comme indiqué dans le code ci-dessous, String a créé la variable «attendue.
String attenduTitle = "Electronics, Cars, Fashion, Collectibles & More | ebay";
Étape # 6: Obtenez le titre réel
Dans cette étape, nous obtenons le titre réel en utilisant la méthode GetTitle ().
En suivant la chaîne de code, nous avons créé la variable «actulatitle» qui enregistre la méthode du texte fourni GetTitle ().
String actualTitle = Driver.gettitle ();
Étape # 7: Vérifiez le titre que nous obtenons
Dans cette étape, nous correspondons au titre réel avec le titre attendu.
La syntaxe est donnée ci-dessous:
Affirmer.Méthode (réelle, attendue)
Il existe de nombreuses méthodes d'actifs tels que Assertequal, Assertunequal, etc.
Comme vous pouvez le voir, le paramètre a deux valeurs:
Le code suivant qui utilise la méthode assertequal () pour correspondre au titre des deux est le même ou non.
Affirmer.asserttequals (actualtitle, attendTitle);
Étape # 8: Titre du match True case
Lorsque le titre réel du site et du titre attendu correspondant, la condition est vraie.
Considérez l'exemple de code ci-dessous:
String attenduTitle = "Electronics, Cars, Fashion, Collectibles & More | ebay";
String actualTitle = Driver.gettitle ();
Affirmer.asserttequals (actualtitle, attendTitle);
La première ligne du code est le titre attendu. Après cela, nous obtenons un titre réel. Suivant cela, la méthode ASSERT () est utilisée pour correspondre au titre réel et attendu.
Sortie dans la console
Après avoir exécuté le code ci-dessus, la sortie montre dans la console que le code a été exécuté avec succès et que le test a été passé = Titlest.
Étape n ° 9: Cas du titre de match défaillard
Lorsque le titre réel du site et le match de titre attendu, alors la condition échoue.
Sortie dans la console:
Après avoir exécuté le code ci-dessus, la sortie montre dans la console que le code a exécuté sans succès et que le test a été échoué = Titlest.
Cas 2:
Dans ce cas, nous passons par une affirmation douce et une affirmation dure.
Affirmation dure et affirmation douce:
Il y a des exigences d'affirmation dans de nombreux cas. Vous pourriez avoir plusieurs affirmations dans le cas de test unique. Il y a cinq six points de vérification différents dans vos cas de test particuliers. Comme si vous obteniez un échec dans une affirmation particulière, ce qui arrivera à d'autres affirmations qui sont en avance sur cette affirmation particulière?
Exemple de scénario:
Vous vérifiez le titre et le match de titre a échoué. Après cela, vous vérifiez le texte de certains et certains éléments Web sur la même page.
Cas de test d'assurance dure
Dans une affirmation dure, si une seule affirmation échouait, le script s'arrête là.
Exemple de scénario:
Comme le titre ne correspond pas et si vous utilisez Assert.Méthode arrerTequals (), puis le cas de test s'arrête à cette échec particulière. Vous ne pouvez pas aller plus loin et opter pour la vérification des autres actifs disponibles dans le même cas de test. Les actifs durs sont un défi car ils s'arrêtent si une seule échec se produit.
Voici l'exemple de code que vous pouvez exécuter et voir le résultat.
String attenduTitle = "Electronics, Cars, Fashion, Collectibles & More | ebay";
String actualTitle = Driver.gettitle ();
Affirmer.asserttequals (actualtitle, attendTitle);
Après avoir exécuté le code ci-dessus, la sortie affiche dans Eclipse que le code a exécuté sans succès. Et le test a été échoué = Titlest. Nous pouvons observer que l'alerte du côté droit en couleur rouge indique les alertes et arrêter l'exécution du code là-bas.
Cas de test d'assertion souple
Dans le cas de l'affirmation douce, le script de vérification de l'affirmement se poursuivra, même si l'échec s'est produit là-bas et que l'échec enregistrera. Et le script continuera.
Étape n ° 1: Obtenez la valeur du bouton de recherche
Dans cette étape, inspectons le https: // www.eBay.com / site et obtenir le nom de l'attribut du bouton de recherche.
La syntaxe est donnée ci-dessous:
Variable de chaîne = «Nom d'entrée»
Voici un exemple de code:
String attendText = "Search";
Étape # 2: Obtenez du texte réel
Dans cette étape, nous obtenons le XPATH du texte réel du bouton de recherche en suivant les étapes:
RightClick> Inspect> Goto Code> RightClick Code> Sélectionnez l'option Copier> Copier XPATH = ["// * [@ id =" gh-btn "]"] Il copiera XPath pour vous.
Obtenez la valeur d'attribut, les attributs de la page Web sont (valeur, type, classe) et nous sélectionnons l'attribut de valeur pour cet exemple .getAttribute Method () est utilisé pour obtenir l'attribut.
La syntaxe est donnée ici:
.getAttribute (nom)
L'exemple de code est mentionné ici:
String réelText = Driver.findElement (par.xpath ("// * [@ id =" gh-btn "]")).getAttribute ("valeur");
.getAttribute ("valeur"); => Obtenez Vale et stockez dans "Texte réel"
Étape # 3: Vérifiez le texte
Vérifiez en utilisant Assert.Méthode assertequals ().
classe publique VerifySoftTest
@Test
public void SearchBtNest () lance InterruptedException
String attenduTitle = "Electronics, Cars, Fashion, Collectibles & More | ebay";
String attendText = "Search";
Webdrivermanager.chromedriver ().installation();
Chromedriver Driver = new ChromEdriver ();
conducteur.get ("https: // www.eBay.com / ");
String actualTitle = Driver.gettitle ();
String réelText = Driver.findElement (par.xpath ("// * [@ id =" gh-btn "]")).getAttribute ("valeur");
Système.dehors.println ("Vérifier le titre");
soft-user.assertEquals (actualTitle, attenduTitle, "la vérification du titre a échoué");
Système.dehors.println ("Vérification du texte");
soft-user.asserTequals (réel text, attendu, "Vérification du texte a échoué");
Système.dehors.println ("Fermer Browser");
conducteur.fermer();
Étape n ° 4: Exécutez le code
Ici, nous exécuterons le code mentionné à l'étape # 3 et verrons la sortie.
Sortie dans Eclipse:
Après avoir exécuté le code ci-dessus, la sortie affiche dans Eclipse. Ce code a été exécuté avec succès et le test a été passé = SearchBtNTest. La couleur verte montre la passe de cas de test.
Conclusion
Il est difficile de trouver un code de test sans affirmation car ce sont les méthodes les plus souvent utilisées pour tester. Cet article illustre l'utilisation de la méthode Assert à l'aide du framework Selenium pour tester, le testeur détermine si le test a été réussi ou non, ainsi que des exceptions via un outil de contrôle automatique. Dans ce tutoriel, nous écrivons du code pour définir le pilote du navigateur, lançant le pilote du navigateur et exécutons des affirmations simples et des affirmations douces et dures. Dans ce contenu, vous avez appris comment l'affirmation douce est plus importante que l'affirmation dure.