Selenium WebDriver est le composant le plus important de la suite Selenium Tool. La dernière version « Selenium 2.0 » est intégrée à l'API WebDriver qui fournit une interface de programmation plus simple et plus concise.
remplacer une couleur dans Gimp
L'image suivante vous donnera une bonne compréhension des composants Selenium et des outils d'automatisation des tests.
Selenium WebDriver a été introduit pour la première fois dans le cadre de Selenium v2.0. La version initiale de Selenium, c'est-à-dire Selenium v1, comprenait uniquement IDE, RC et Grid. Cependant, avec la sortie de Selenium v3, RC est devenu obsolète et déplacé vers l'ancien package.
Dans WebDriver, les scripts de test peuvent être développés à l'aide de n'importe quel langage de programmation pris en charge et peuvent être exécutés directement dans la plupart des navigateurs Web modernes. Les langages pris en charge par WebDriver incluent C#, Java, Perl, PHP, Python et Ruby.
Avant d'apprendre les concepts de Selenium WebDriver, vous devez bien connaître l'un des langages de programmation pris en charge. Actuellement, le pilote Web Selenium est le plus populaire avec Java et C#. Pour ce tutoriel, nous utilisons Selenium avec Java. Vous pouvez vous référer aux liens ci-dessous pour apprendre les concepts de base et avancés de Java et C# :
Tutoriel Java : https://www.javatpoint.com/java-tutorial
Tutoriel C# : https://www.javatpoint.com/c-sharp-tutorial
Selenium WebDriver fonctionne beaucoup plus rapidement que Selenium RC car il effectue des appels directs aux navigateurs Web. RC, quant à lui, a besoin d'un serveur RC pour interagir avec le navigateur.
WebDriver a une implémentation intégrée du pilote Firefox (Gecko Driver). Pour les autres navigateurs, vous devez brancher les pilotes spécifiques à leur navigateur pour communiquer et exécuter le test. Les WebDriver les plus couramment utilisés incluent :
- Pilote Google Chrome
- Pilote Internet Explorer
- Pilote Opéra
- Pilote Safari
- HTML Unit Driver (un pilote spécial sans tête)
Selenium WebDriver - Architecture
L'API Selenium WebDriver fournit une fonctionnalité de communication entre les langues et les navigateurs.
L'image suivante montre la représentation architecturale de Selenium WebDriver.
Il existe quatre composants de base de l'architecture WebDriver :
- Liaisons du langage Sélénium
- Protocole filaire JSON
- Pilotes de navigateur
- De vrais navigateurs
Liaisons de langage Selenium / Bibliothèques clientes Selenium
Les développeurs Selenium ont créé des liaisons de langage/bibliothèques client Selenium afin de prendre en charge plusieurs langues. Par exemple, si vous souhaitez utiliser le pilote du navigateur en Java, utilisez les liaisons Java. Toutes les liaisons linguistiques prises en charge peuvent être téléchargées sur le site officiel (https://www.seleniumhq.org/download/#client-drivers) du Sélénium.
Protocole filaire JSON
JSON (JavaScript Object Notation) est un standard ouvert d'échange de données sur le Web. Il prend en charge les structures de données telles que les objets et les tableaux. Il est donc facile d’écrire et de lire des données à partir de JSON. Pour en savoir plus sur JSON, visitez https://www.javatpoint.com/json-tutorial
JSON Wire Protocol fournit un mécanisme de transport pour transférer des données entre un serveur et un client. Le protocole JSON Wire sert de norme industrielle pour divers services Web REST. Pour en savoir plus sur les services Web, visitez https://www.javatpoint.com/web-services-tutorial
Pilotes de navigateur
Selenium utilise des pilotes spécifiques à chaque navigateur afin d'établir une connexion sécurisée avec le navigateur sans révéler la logique interne des fonctionnalités du navigateur. Le pilote du navigateur est également spécifique au langage utilisé pour l'automatisation tel que Java, C#, etc.
Lorsque nous exécutons un script de test à l'aide de WebDriver, les opérations suivantes sont effectuées en interne.
- La requête HTTP est générée et envoyée au pilote du navigateur pour chaque commande Selenium.
- Le pilote reçoit la requête HTTP via le serveur HTTP.
- Le serveur HTTP décide de toutes les étapes pour exécuter les instructions qui sont exécutées sur le navigateur.
- L'état d'exécution est renvoyé au serveur HTTP qui est ensuite renvoyé au script d'automatisation.
Navigateurs
Navigateurs pris en charge par Selenium WebDriver :
- Internet Explorer
- Mozilla Firefox
- Google Chrome
- Safari
Selenium WebDriver - Fonctionnalités
Certaines des fonctionnalités les plus importantes de Selenium WebDriver sont :
Pilote WebDriver = nouveau FirefoxDriver(); (Navigateur Firefox)
Pilote WebDriver = nouveau ChromeDriver(); (Navigateur Chrome)
Pilote WebDriver = nouveau pilote InternetExplorer (); (Navigateur Internet Explorer)
WebDriver permet également aux testeurs de gérer des types complexes d'éléments Web tels que des cases à cocher, des listes déroulantes et des alertes via des outils de recherche dynamiques.
Index du didacticiel Selenium WebDriver
Tutoriel Selenium WebDriver
- Tutoriel Selenium WebDriver
- WebDriver contre RC
- Installation du pilote Web
- Premier cas de test WebDriver
- Commandes du pilote Web
- Exécution d'un test sur Chrome
- Exécution d'un test sur Firefox
- Exécution d'un test sur IE
- Exécution d'un test sur Safari
- Stratégies de localisation
- Stratégies de localisation par ID
- Localisation des stratégies par nom
- Localisation des stratégies par nom de classe
- Localisation des stratégies par nom de balise
- Localisation des stratégies par texte de lien
- Stratégies de localisation par texte de lien partiel
- Localisation des stratégies par CSS
- Stratégies de localisation par XPath
- Gestion des listes déroulantes
- WebDriver-Glisser-Déposer
- Alertes de gestion des pilotes Web
- Faire défiler une page Web
- WebDriver - Commandes du navigateur
- WebDriver - Commandes de navigation
- WebDriver - Commandes WebElement
- Gestion des boutons radio
- Case à cocher Gestion
- Affirmations sur le sélénium
- Grille de sélénium