Les 6 façons les plus simples de trouver des composants dans le sélénium
Publié: 2022-05-19Les composants de Selenium jouent un rôle important lors du test d'une application ou d'un logiciel ; ce sont les éléments constitutifs des scripts d'automatisation Selenium. Mais le véritable défi consiste à localiser ces composants, le cas échéant, sur la page Web.
Heureusement, il existe différentes façons de trouver ces composants dans Selenium. Vous pouvez trouver des composants spécifiques pour une utilisation particulière qui vous aident dans différentes activités de chargement de données dans les tests d'automatisation .
Celles-ci sont appelées localisateurs ou techniques de localisation qui ne sont rien d'autre que des commandes puissantes. À l'aide de ces localisateurs, vous pouvez trouver rapidement les composants de l'interface graphique à travers lesquels vous pouvez effectuer plusieurs actions utilisateur.
Mais, avant d'examiner les différentes façons de trouver des composants sur Selenium, il est crucial de comprendre ce que sont ces composants et comment ils fonctionnent.
Composants du sélénium
Le meilleur outil pour tester la régression d'un site Web ou le chargement automatique de données est sans aucun doute Selenium. En termes simples, nous pouvons dire que Selenium est un outil puissant pour contrôler les navigateurs Web via des programmes ou des commandes.
Il est pratique pour tous les navigateurs et vous permet d'opérer sur tous les systèmes d'exploitation cruciaux. Ses scripts sont composés de plusieurs langages de programmation tels que Python, Java, C#, etc. De plus, il utilise plusieurs autres langages à côté de ceux-ci, et ici nous utiliserons le langage très populaire Python pour une compréhension simple.
Selenium possède quatre éléments principaux - Selenium IDE, Selenium RC, Selenium Web Driver et Selenium GRID.
Le sélénium existe dans le secteur depuis un certain temps par des testeurs de mécanisation dans le monde entier.
Examinons les quatre éléments principaux du sélénium -
IDE au sélénium
Selenium IDE (également connu sous le nom d'environnement de développement intégré) est l'un des équipements cruciaux de la suite Selenium. Il s'agit d'un environnement de développement intégré (IDE) complet pour les expériences Selenium. Il est appliqué en tant qu'ajout Firefox ainsi qu'en tant qu'extension Chrome.
Un autre aspect de Selenium IDE est qu'il permet la capture, la réécriture et le débogage d'essais pratiques. Il était autrefois connu sous le nom de Selenium Recorder. Selenium-IDE a été initialement créé par Shinya Kasatani et accordé au projet Selenium en 2006.
Selenium IDE n'a pas été correctement maintenu plus tôt et a commencé à exister en 2018.
Les écrits peuvent être eux-mêmes capturés et modifiés manuellement, offrant une assistance à l'auto-complétion et la capacité de passer rapidement les commandes. Les scripts sont rapportés en Selenese, un langage de script d'essai particulier pour Selenium.
Selenese fournit des commandes pour effectuer des activités dans un navigateur (appuyer sur un lien, choisir une alternative) et obtenir des données à partir des pages qui se produisent.
Sélénium RC (télécommande)
Selenium Remote Control (alias RC) est un serveur Web composé du langage Java qui ratifie les commandes via le navigateur via HTTP. RC facilite la composition de tests informatisés pour les applications Web dans plusieurs langages de codage, permettant une intégration décente de Selenium dans les frameworks de test de composants en vigueur.
Le programme Selenium fournit actuellement des pilotes grand public pour plusieurs langages tels que PHP, Python, Ruby, .NET, Perl et Java afin de simplifier les tests de thèse. De plus, vous pouvez utiliser le pilote Java avec JavaScript (via le moteur Rhino).
Un exemple de serveur Selenium RC est nécessaire pour publier un essai de test HTML - cela implique que le dock doit être plusieurs pour chaque exécution de similarité. Néanmoins, pour le cas de test Java/PHP, un seul échantillon Selenium RC doit fonctionner sans fin.
Pilote Web Selenium
Selenium WebDriver est l'héritier de Selenium RC. Selenium WebDriver respecte les commandes (fournies en Selenese ou via une API client) et les fournit à un navigateur. Ceci est appliqué via un pilote de navigateur spécifique au navigateur qui fournit des commandes à un navigateur et obtient des résultats.
Presque tous les pilotes de navigateur ouvrent et accèdent certainement aux applications de navigateur (comme Mozilla Firefox, Google Chrome, Internet Explorer, Safari ou même Microsoft Edge) ; en outre, un pilote de navigateur HtmlUnit émule un navigateur en utilisant l'application sans tête HtmlUnit.
Selenium WebDriver ne nécessite pas de serveur unique pour appliquer les tests. Au lieu de cela, le WebDriver ouvre rapidement une illustration de navigateur et la régule. Néanmoins, vous pouvez utiliser Selenium Grid avec WebDriver pour effectuer des tests sur des réseaux distants.
Lorsque cela est possible, WebDriver utilise les fonctionnalités au niveau du système d'exploitation autochtone au lieu des recommandations JavaScript basées sur le navigateur pour exécuter l'application. Cela contourne les problèmes de légères divergences entre les commandes autochtones et JavaScript, englobant les réglementations de sécurité.
GRILLE de sélénium
Selenium Grid est un serveur qui permet aux expériences d'utiliser des spécimens de navigateur Web fonctionnant sur des appareils isolés. Le concentrateur enregistre les serveurs qui accèdent aux spécimens de navigateur (nœuds WebDriver) et permet aux tests d'utiliser ces spécimens.
Selenium Grid permet d'effectuer des tests en correspondance sur plusieurs appareils et de gérer des éditions de navigateur distinctes et des compositions de navigateur de manière centralisée (plutôt que chaque test individuel).

La capacité à gouverner les tests sur des instances de navigateur isolées est utile pour diffuser la loi des tests sur différentes machines et effectuer des tests dans des applications fonctionnant sur plusieurs plates-formes ou systèmes d'exploitation. L'autre est bénéfique dans les cas où toutes les applications à utiliser pour les tests ne peuvent pas fonctionner sur la même plate-forme.
6 façons les plus simples de trouver des composants dans le sélénium
Les chemins ne sont rien d'autre que des localisateurs dans Selenium; ces localisateurs sont de puissantes commandes accessibles pour saisir et localiser les éléments de l'interface graphique dans Selenium. De plus, vous pouvez utiliser ces commandes pour effectuer plusieurs actions utilisateur.
La liste des 6 façons simples de trouver des composants d'interface graphique dans Selenium est-
- IDENTIFIANT
- Nom
- Texte du lien
- Texte du lien partiel
- Nom de la balise
- Nom du cours
En utilisant les localisateurs ci-dessus dans Selenium WebDriver, vous pouvez localiser les composants via la syntaxe "findElement/findElements".
1. Localisateur d'ID
Les identifiants sont l'option de localisation la plus efficace et la plus rapide pour trouver des composants sur Selenium. Les ID sont des numéros uniques permettant d'identifier tous les composants. Le localisateur d'ID appelle document.getElementById() , ce qui en fait l'option de localisation la plus rapide. De nombreux navigateurs optimisent les iD.
2. Localisateur de nom
Une fois que le localisateur d'ID est arrivé au localisateur de nom, il est avantageux qu'un élément Web n'ait pas d'attribut d'ID. Mais le problème avec les localisateurs de noms est qu'ils ne peuvent pas être uniques à chaque fois. Selenium choisira le premier élément correspondant pour effectuer une action s'il y a au moins deux noms ou plus.
3. Localisateur de texte de lien
C'est une option de localisation basée sur la situation. LinkText Locator accède aux liens en utilisant leur texte de lien exact via la méthode By.linkText() . Cependant, il peut y avoir une situation où deux ou plusieurs associations ont le texte exact du lien ; dans cette situation, Selenium sélectionne le premier élément correspondant avec le lien pour effectuer n'importe quelle action.
4. Localisateur partiel de LinkText
Il s'agit à nouveau d'une option de localisation basée sur la situation. Partial LinkText Locator accède aux liens en utilisant une partie du texte du lien via la méthode By.partialLinkText() . La première correspondance parmi toutes sera accessible si vous spécifiez un texte de lien partiel avec plusieurs correspondances.
5. Localisateur de TagName
TagName Locator fait partie d'une structure DOM et dans cette structure, chaque élément d'une page Web Selenium est défini via des balises telles que la balise de bouton, la balise d'entrée, la balise d'ancrage, etc. Chaque balise est livrée avec plusieurs attributs tels que le nom, la classe de valeur, ID , etc.
6. Localisateur de nom de classe
Lorsque des éléments sont définis à l'aide de l'attribut class, ClassName Locator est l'un des meilleurs moyens de les localiser. La meilleure partie des attributs de classe est qu'ils n'ont pas besoin d'être uniques comme l'ID.
Autres façons de trouver des composants dans le sélénium
Outre les six moyens les plus importants de trouver des composants sur Selenium, il existe deux autres moyens. Ces moyens ne sont pas mis en évidence mais sont efficaces à utiliser.
1. XPath
L'expression XPath fournit des moyens fiables de localiser les composants Web, mais c'est aussi le plus lent de tous les localisateurs. Les moteurs XPath sont incohérents d'un navigateur à l'autre car ils sont différents dans chaque navigateur. Par exemple, votre code XPath ne fonctionnera pas sur IE si vous l'écrivez dans Chrome.
2. Sélecteur CSS
Si le composant Web n'a pas d'ID ou de nom, la meilleure façon de les localiser est d'utiliser CSS Selector. Comparé à XPath, CSS est plus rapide et plus lisible. CSS est compatible avec tous les navigateurs populaires et améliore les performances. CSS devient utile lorsque vous souhaitez tester notre application sur plusieurs navigateurs. CSS est le meilleur pour IE car XPath est IE non fonctionnel.
Commencez vos tests d'automatisation Selenium avec LambdaTest
La recherche de composants dans Selenium nécessite une connaissance complète de l'emplacement des composants sur la page Web et de toutes les manières possibles d'adopter la bonne approche. Nous avons répertorié les six meilleures façons de le faire; cependant, vous pouvez en trouver quelques autres, mais ce que nous avons énuméré ci-dessus est suffisant pour trouver tous les composants Selenium. Selenium devient facile avec le framework LambdaTest, où tous les composants essentiels sont à portée de main.
LambdaTest, une puissante plateforme de test dans le cloud, vous aidera à accélérer vos compétences en test d'automatisation. Il fournit des tests de navigateur automatisés avec les meilleurs outils de test d'automatisation tels que Selenium, Cypress, Playwright et Puppeteer sur plus de 3000 navigateurs de bureau et mobiles et utilise des outils de développement intégrés pour le débogage qui vous aideront également à apprendre des outils de test d'automatisation avancés. Il compte également plus de 600 000 utilisateurs fidèles dans plus de 130 pays.
Selenium avec LambdaTest est la seule paire dont vous avez besoin pour accélérer votre parcours de test.