logo

Pilote Web Sélénium

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.


Pilote Web Sélénium

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.


Architecture du pilote Web Selenium

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 :

    Prise en charge de plusieurs navigateurs: Selenium WebDriver prend en charge une large gamme de navigateurs Web tels que Firefox, Chrome, Internet Explorer, Opera et bien d'autres. Il prend également en charge certains navigateurs non conventionnels ou rares comme HTMLUnit.

Fonctionnalités du pilote Web Selenium
    Prise en charge de plusieurs langues: WebDriver prend également en charge la plupart des langages de programmation couramment utilisés comme Java, C#, JavaScript, PHP, Ruby, Pearl et Python. Ainsi, l'utilisateur peut choisir l'un des langages de programmation pris en charge en fonction de ses compétences et commencer à créer les scripts de test.Vitesse: WebDriver fonctionne plus rapidement que les autres outils de Selenium Suite. Contrairement à RC, il ne nécessite aucun serveur intermédiaire pour communiquer avec le navigateur ; l'outil communique plutôt directement avec le navigateur.

Fonctionnalités du pilote Web Selenium
    Commandes simples: La plupart des commandes utilisées dans Selenium WebDriver sont faciles à implémenter. Par exemple, pour lancer un navigateur dans WebDriver, les commandes suivantes sont utilisées :
    Pilote WebDriver = nouveau FirefoxDriver(); (Navigateur Firefox)
    Pilote WebDriver = nouveau ChromeDriver(); (Navigateur Chrome)
    Pilote WebDriver = nouveau pilote InternetExplorer (); (Navigateur Internet Explorer)WebDriver - Méthodes et classes: WebDriver fournit plusieurs solutions pour faire face à certains défis potentiels liés aux tests d'automatisation.
    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.

Fonctionnalités du pilote Web Selenium

Index du didacticiel Selenium WebDriver


Tutoriel Selenium WebDriver

  • 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