introduction selenium webdriver selenium tutorial 8
Introduction à Selenium WebDriver:
Plus tôt dans ces séries , nous avons publié des tutoriels plus axés sur Selenium IDE et ses différents aspects . Nous avons présenté l'outil et discuté de ses fonctionnalités. Nous avons également construit quelques scripts utilisant Selenium IDE et Pyromane . À partir de là, nous sommes passés à différents types d'éléments Web disponibles et à leur stratégies de localisation .
Maintenant que nous connaissons bien Selenium IDE, laissez-nous déplacer notre courbe d'apprentissage vers la création de scripts d'automatisation plus avancés en utilisant Selenium WebDriver . WebDriver est l'un des outils de test d'automatisation les plus convaincants. Parlons-en en détail.
Ce que vous apprendrez:
- Introduction à Selenium WebDriver
- Architecture WebDriver
- Fonctionnalités de Selenium WebDriver
- Conclusion
- lecture recommandée
Introduction à Selenium WebDriver
WebDriver est l'un des outils les plus puissants et les plus populaires de la boîte à outils Selenium. WebDriver est une version étendue de Selenium RC avec des avantages superflus et répond à nombre de ses limites. WebDriver étend sa prise en charge à de nombreux navigateurs et plates-formes les plus récents, contrairement à Selenium IDE. WebDriver ne nécessite pas non plus de démarrer le serveur Selenium avant l'exécution des scripts de test, contrairement à Selenium RC.
Selenium RC en agrégation avec l'API WebDriver est connu sous le nom de Selenium 2.0. Selenium a été développé pour prendre en charge les pages Web dynamiques et les appels Ajax. Il prend également en charge divers pilotes pour effectuer des tests mobiles basés sur le Web.
Architecture WebDriver
WebDriver est un outil de test basé sur le Web avec une différence subtile avec Selenium RC. Puisque l'outil a été construit sur la base où un client isolé a été créé pour chacun des navigateurs Web; aucun JavaScript De gros travaux n'était requis comme nous l'avons vu dans notre tout premier tutoriel.
WebDriver appelle directement le navigateur Web et le script de test entier est exécuté de cette manière. WebDriver utilise le support et les capacités des navigateurs pour l'automatisation.
Contrairement à Selenium RC, Selenium WebDriver ne nécessite pas essentiellement le démarrage de Selenium Server avant de lancer l'exécution du script de test. L'utilisateur peut tirer parti de l'avantage et peut ou non avoir besoin de Selenium Server s'il souhaite effectuer l'exécution du test sur la même machine où réside le navigateur.
Cas exceptionnels où Selenium Server est requis avec WebDriver:
- Lorsque l'utilisateur souhaite exécuter des scripts de test sur la machine distante.
- Lorsque l'utilisateur souhaite exécuter des scripts de test sur HtmlUnit Driver.
- Lorsque l'utilisateur souhaite exécuter des scripts de test sur plusieurs plates-formes.
WebDriver est un framework purement orienté objet qui fonctionne sur la couche OS. Il utilise la compatibilité native du navigateur avec l’automatisation sans utiliser d’entité périphérique. Avec la demande croissante, il a acquis une grande popularité, une base d'utilisateurs et est devenu de loin l'un des outils de test d'automatisation open source les plus largement utilisés.
Fonctionnalités de Selenium WebDriver
Compatibilité du navigateur
WebDriver prend en charge une large gamme de navigateurs Web et leurs versions. Il prend en charge tous les navigateurs conventionnels en plus de certains navigateurs uniques et rares comme le navigateur HtmlUnit contrairement à Selenium RC et Selenium IDE.
quelle est la différence entre linux et unix
Le navigateur HtmlUnit exécute les scripts de test de la même manière que les autres navigateurs, à l'exception du fait qu'il s'exécute en mode sans tête, c'est-à-dire en mode sans interface graphique, et que l'utilisateur ne pourra pas voir l'exécution du script de test. Dit que l'exécution du script de test se déroule en mode sans tête, donc la vitesse d'exécution prend un rouleau et accélère l'exécution.
WebDriver prend également en charge les tests mobiles basés sur le Web. Ainsi, il fournit AndroidDriver et IphoneDriver pour soutenir les tests mobiles basés sur le Web.
Noter: WebDriver ne prend pas facilement en charge les nouveaux navigateurs.
Support linguistique
Plus tôt dans les sessions, nous avons appris à créer des scripts à l'aide des fonctionnalités d'enregistrement et de lecture. Nous avons également vu comment les créer manuellement à l'aide des commandes Selenese. Lors de la création de tels scripts de test, nous rencontrons diverses contraintes.
Certaines des limitations imposées par Selenium IDE sont:
- Ne prend pas en charge les itérations et les instructions conditionnelles
- Ne prend pas en charge les boucles
- Ne prend pas en charge la gestion des erreurs
- Ne prend pas en charge la dépendance des scripts de test
Les obstacles ci-dessus peuvent être résolus par programme. WebDriver permet à l'utilisateur de choisir parmi les différents langages de programmation et de construire son script de test dans le langage désigné.
Les langages de programmation pris en charge par Selenium WebDriver sont:
- Java
- C #
- PHP
- perle
- Rubis
- Python
Ainsi, l'utilisateur peut choisir n'importe quel langage de programmation (à condition que le langage soit pris en charge par WebDriver) en fonction de sa compétence et peut commencer à créer des scripts de test.
La vitesse
Comparé aux autres outils de la suite Selenium, WebDriver s'avère être l'outil le plus rapide parmi tous. La communication n'est canalisée via aucune intervention externe; plutôt l'outil communique directement avec le navigateur comme celui de n'importe quel utilisateur. Ainsi, WebDriver tire parti de la compatibilité native du navigateur vers l’automatisation.
java programmation entretien questions et réponses pour expérimenté
D'autres outils de la suite Selenium comme Selenium RC ne communiquent pas directement avec le navigateur Web. Les bibliothèques clientes (les scripts de test sont écrits dans n'importe quel langage de programmation) communiquent avec Selenium Remote Control Server et Remote Control communique avec un Selenium Core (programme JavaScript) qui à son tour communique avec le navigateur Web. Par conséquent, ce type de communication tordue constitue un obstacle à la vitesse d'exécution.
Pilotes, méthodes et classes
WebDriver offre une large gamme de solutions à certains défis potentiels dans les tests d'automatisation. Cela nous aide à gérer des types complexes d'éléments Web tels que les cases à cocher, les listes déroulantes et les alertes à l'aide de chercheurs dynamiques.
Avec l'avènement de l'ère mobile, l'API WebDriver a également mûri et introduit certaines des technologies clés pour entrer dans cet horizon. WebDriver permet à l'utilisateur d'effectuer des tests mobiles basés sur le Web. Il fournit deux des pilotes essentiels pour effectuer des tests mobiles sur le Web.
- AndriodDriver
- IphoneDriver
De plus, l'API WebDriver est assez simple et facile. Il n'inclut pas les commandes répétitives. Au contraire, Selenium RC incarne de nombreuses commandes tautologiques.
Conclusion
Dans ce tutoriel, nous avons essayé de vous familiariser avec Selenium WebDriver en décrivant son architecture, ses fonctionnalités et ses limites.
Voici les points essentiels de cet article.
- La suite Selenium comprend 4 composants de base; Selenium IDE, Selenium RC, WebDriver, Selenium Grid.
- WebDriver permet à un utilisateur d'effectuer des tests d'automatisation basés sur le Web. WebDriver est un outil totalement différent qui présente divers avantages par rapport à Selenium RC.
- WebDriver prend en charge un large éventail de navigateurs Web, de langages de programmation et d'environnements de test.
- WebDriver communique directement avec le navigateur Web et utilise sa compatibilité native pour automatiser.
- La prise en charge de WebDriver ne se limite pas à la périphérie des actions traditionnelles des utilisateurs. Au lieu de cela, il prend en charge des mécanismes de gestion efficaces pour les actions utilisateur complexes telles que la gestion des listes déroulantes, les appels Ajax, la commutation entre les fenêtres, la navigation, la gestion des alertes, etc.
- WebDriver permet à l'utilisateur d'effectuer des tests mobiles basés sur le Web. Pour prendre en charge la même chose, WebDriver présente AndroidDriver et IphoneDriver.
- WebDriver est plus rapide que les autres outils de Selenium Suite car il appelle directement un navigateur sans aucune intervention externe.
Tutoriel suivant # 9 : Dans le prochain tutoriel, nous discuterons de la procédure d'installation pour démarrer avec WebDriver initier à partir de zéro. Nous discuterions également de la gamme variée de pilotes fournis par WebDriver , chacun répondant à des besoins différents.
Jusqu'à ce que notre prochain tutoriel soit en construction, les lecteurs peuvent visiter le site officiel de Selenium. Une documentation détaillée faisant référence à Selenium WebDriver est implémentée sur son site officiel.
Si vous avez des demandes / questions spécifiques à ce sujet ou sur tout autre didacticiel de cette série de formations en ligne Selenium, faites-le nous savoir dans les commentaires .
lecture recommandée
- Implémentation de notre premier script WebDriver - Tutoriel Selenium WebDriver # 10
- Tutoriel Cucumber Selenium: Intégration Cucumber Java Selenium WebDriver
- Configuration et installation complètes de WebDriver avec Eclipse - Tutoriel Selenium # 9
- Vérifier la visibilité des éléments Web à l'aide de divers types Commandes WebDriver - Tutoriel Selenium # 14
- Script Selenium efficace et scénarios de dépannage - Tutoriel Selenium # 27
- Débogage de scripts Selenium avec des journaux (Tutoriel Log4j) - Tutoriel Selenium # 26
- 30+ meilleurs tutoriels sur Selenium: Apprenez le sélénium avec de vrais exemples
- Comment gérer les alertes / fenêtres contextuelles dans Selenium WebDriver - Tutoriel Selenium # 16