Que sont les localisateurs en sélénium?
Dans Selenium, un localisateur est utilisé pour identifier de manière unique chaque élément Web sur une page Web, un peu comme une adresse. En d'autres termes, c'est une méthode d'utilisation de plusieurs techniques d'identification pour reconnaître un objet sur une page Web de manière spécifique. L'identification avec précision de l'élément ou de l'élément sur la page Web est l'objectif fondamental de l'utilisation des localisateurs d'éléments.
Les éléments d'une page Web peuvent être interagi avec l'utilisation des localisateurs d'éléments dans Selenium WebDriver. L'action peut être effectuée sur le composant une fois qu'il est reconnu. Les éléments Web sont tous les éléments présents sur une page Web et peuvent être situés à l'aide de n'importe quelle forme de localisateur.
Types de localisateurs en sélénium
Il existe différents types de localisateurs qui sont utilisés à différentes fins. En sélénium, nous utilisons la classe «par» pour accéder aux localisateurs. Selenium prend en charge huit localisateurs pour identifier les éléments, notamment le nom de classe, ID, CSSSelector, LinkText, PartialLinkText, Name, TagName et XPath.
Stratégies de localisation avec des exemples
Dans ce tutoriel, nous couvrirons les huit types de localisateurs de base. Commençons!
Considérez, pour l'illustration, une page de compte d'utilisateur de connexion située sur https: // www.satin.com /.
Un formulaire de connexion avec deux champs d'entrée, «nom d'utilisateur» et «mot de passe», et un champ de bouton sont illustrés dans la figure précédente.
Maintenant, nous apprendrons à passer les différents localisateurs pour identifier la boîte d'entrée «nom d'utilisateur» sur la page Web.
Étape 1: Localisation par ID
Les ID sont la méthode la plus utilisée pour identifier l'élément spécifique. C'est une référence spéciale que le programmeur établit lors de l'écriture du code pour un objet Web. Bien qu'il soit idéal que l'ID n'apparaît pas plus d'une fois sur une page, les navigateurs fournissent des exceptions à cette règle. Sans question, l'ID est le localisateur le plus efficace du sélénium.
Pour trouver l'ID sur la page Web, allez sur le site et inspectez le «nom d'utilisateur». Vous obtiendrez le champ comme indiqué dans la figure suivante:
Ici, vous pouvez trouver la syntaxe suivante:
id = «id de l'élément»
Exemple:
Ce qui suit est un exemple de code pour votre compréhension:
conducteur.findElement (par.id ("nom utilisateur")).sendKeys ("TestingById");
Sortir:
Dans la figure précédente, la sortie montre que la méthode SendKeys () transmet le «TestingByid» au nom d'utilisateur à l'aide du localisateur de nom de classe à l'aide du localisateur d'ID, par.identifiant().
Étape 2: Localisation par son nom
L'outil idéal pour vérifier un formulaire de connexion est un localisateur de nom de champ car les noms sont uniques, mais pas toujours. C'est pourquoi il est préférable d'utiliser les localisateurs avec un schéma différent lorsqu'il existe différents types de connexion sur la même longueur d'onde.
Il est similaire à l'ID de recherche de l'élément, remplaçant uniquement l'ID pour nommer comme name = ””. Pour trouver le nom sur la page Web, appliquez la même méthode qui a été décrite à l'étape 1.
La syntaxe est écrite dans ce qui suit:
nom = "Nom de l'élément"
Voici un exemple de codage pour votre référence:
conducteur.findElement (par.nom ("nom utilisateur")).sendKeys ("TestingByName");
Sortir:
Il peut être vu à partir de la figure suivante qui affiche que la méthode SendKeys () transmet le «TestingByName» au nom d'utilisateur à l'aide du localisateur de nom, par.nom().
Étape 3: Localisation par classe
Le nom de classe d'un élément est situé à l'aide du localisateur de nom de classe. L'élément initial d'une page Web est atteint par le localisateur de classe à l'aide d'une propriété de classe spécifiée.
Utilisez la procédure décrite à l'étape 1 pour localiser le nom sur le site Web.
Syntaxe:
Classe = «Classe de l'élément»
Exemple:
conducteur.findElement (par.className ("form_input")).sendKeys ("TestingByClass");
Sortir:
Il montre que la méthode SendKeys () passe la «TestingByClass» au nom d'utilisateur à l'aide du localisateur de classe, par.nom du cours().
Étape 4: localisation par xpath
Xpath est utilisé lorsque l'élément est sans classe, nom ou propriété d'identification qui peut être accessible par elle. Les localisateurs XPath aident à trouver l'élément sur la page Web. Les localisateurs, utilisant XPath, sont solides et dignes de confiance. Il s'agit d'une technique qui utilise une expression XPath pour assurer l'emplacement de tout élément sur la page.
Pour trouver le XPATH, cliquez avec le bouton droit> Inspecter> Accédez à Code> Cliquez avec le bouton droit Code> Sélectionnez Option Copier> Copier XPATH. Il copie le xpath pour vous.
Syntaxe:
name = ”xpath de l'élément»
Exemple:
conducteur.findElement (par.xpath ("// * [@ id =" user-name "]")).sendKeys ("TestingByxpath");
Sortir:
La sortie montre que la méthode SendKeys () passe le «TestingByxpth» au nom d'utilisateur à l'aide du localisateur XPath, par.xpath ().
Étape 5: Localisation par linkText
Le localisateur LinkText est utilisé lorsque nous devons agir avec du texte hyperlien. Nous pouvons accéder au lien en ajoutant «link =» avant notre lien ciblé.
Pour trouver le LinkText sur la page Web, accédez au site et inspectez le «nom d'utilisateur». Vous obtiendrez le champ comme indiqué dans la figure suivante:
Syntaxe:
link = "link_text"
Exemple:
conducteur.get ("https: // www.sélénium.Dev / Documentation / WebDriver / Elements / Locators / ");
conducteur.findElement (par.linkText ("Début")).Cliquez sur();
Nous obtenons l'URL et sélectionnons le lien d'ancrage pour cliquer automatiquement sur le sous-menu «Getting That’s.
Sortir:
La figure suivante montre la sortie de la méthode click () qui ouvre automatiquement l'url «Getting Start» à l'aide du localisateur LinkText, par.linkText ().
Étape 6: Localisation par texte de lien partiel
Cette étape est la même que à l'étape 5. Ici, nous n'avons pas besoin d'écrire le texte complet complet pour ouvrir l'URL, mais nous pouvons accéder au lien avec le texte partiel.
Syntaxe:
link = ”partial_link_text”
Exemple:
Ici, nous observons que le même code est utilisé comme LinkText, mais nous donnons un titre partiel du lien d'ancrage pour charger la page.
conducteur.get ("https: // www.sélénium.Dev / Documentation / WebDriver / Elements / Locators / ");
conducteur.findElement (par.PartialLinkText ("Getting")).Cliquez sur();
Étape 7: Localisation par CSSSelector
Pour identifier l'élément sur la page Web, utilisez le localisateur CSSSeLector.
Pour trouver le nom sur la page Web, appliquez la même méthode qui a été décrite à l'étape 5.
Syntaxe:
Classe = «Classe de l'élément»
Exemple:
conducteur.findElement (par.CSSSeLector ("form_input")).sendKeys ("TestingByClass");
Sortir:
La sortie montre que la méthode SendKeys () passe la «TestingByClass» au nom d'utilisateur à l'aide du localisateur de classe, par.nom du cours().
Étape 8: Localisation par tagname
voici div, entrée, p. Dans ce tutoriel, nous utilisons la balise pour identifier l'élément.
Syntaxe:
tag = ”Nom de la balise"
Exemple:
conducteur.findElement (par.TagName ("entrée")).sendKeys ("TestingByTagBame");
Sortir:
Nous pouvons observer à partir du chiffre suivant que la méthode SendKeys () transmet le «TestingByBame» au nom d'utilisateur à l'aide du localisateur d'entrée, par.TagName ().
Conclusion
Cet article guide l'utilisation des localisateurs dans le cadre du sélénium pour identifier les éléments d'une page Web via un outil de contrôle automatique. Pour cela, nous avons installé le Java JDK et l'éclipse avec les bibliothèques de bocal Selenium pour «Automatiser le logiciel des outils de contrôle» dans le système. En utilisant la langue Java, nous écrivons le code pour définir le pilote du navigateur. Ensuite, nous appliquons les huit stratégies des localisateurs en utilisant les bibliothèques de sélénium telles que la classe, le nom, l'ID, la balise, le texte de lien et le texte de lien partiel. Nous avons appris à savoir si une balise / élément n'a pas de nom, d'identification ou de classe; comment nous pouvons identifier cet élément; et comment cliquer et taper automatiquement le texte.