Tutoriel Python Sélénium

Tutoriel Python Sélénium

Selenium est un outil puissant pour contrôler les navigateurs Web via des programmes et effectuer l'automatisation du navigateur. Il est fonctionnel pour tous les navigateurs, fonctionne sur tous les principaux systèmes d'exploitation et ses scripts sont écrits dans différentes langues, c'est-à-dire Python , Java , C# , etc., nous travaillerons avec Python. Le didacticiel Selenium couvre tous les sujets tels que – WebDriver, WebElement, tests unitaires avec Selenium. Ce didacticiel Python Selenium couvre Selenium des bases aux utilisations avancées et professionnelles. Tutoriel Selenium-Python

Pourquoi apprendre Selenium Python ?

  • Open Source et portable – Selenium est un framework de test Web open source et portable.
  • Combinaison d'outil et de DSL – Selenium est une combinaison d’outils et de DSL (Domain Specific Language) afin de réaliser différents types de tests.
  • Plus facile à comprendre et à mettre en œuvre – Les commandes Selenium sont classées en termes de différentes classes, ce qui facilite leur compréhension et leur mise en œuvre.
  • Moins de charge et de stress pour les testeurs – Comme mentionné ci-dessus, le temps nécessaire pour tester des scénarios de tests répétés sur chaque nouvelle version est presque réduit à zéro. Par conséquent, la charge de travail du testeur est réduite.
  • Réduction des coûts pour les clients professionnels – L'entreprise doit payer aux testeurs leur salaire, qui est économisé grâce à l'outil de test d'automatisation. L'automatisation permet non seulement de gagner du temps, mais génère également des avantages en termes de coûts pour l'entreprise.

L'apprentissage de Selenium avec Python ouvre de nombreuses possibilités pour des tests d'applications Web efficaces et efficients, en particulier lorsqu'il est associé à des plates-formes de test cloud populaires telles que LambdaTest.

Test Lambda est une plate-forme d'orchestration et d'exécution de tests basée sur l'IA qui permet aux développeurs et aux testeurs d'effectuer des tests Selenium Python à grande échelle dans un laboratoire de test à distance de plus de 3 000 navigateurs de bureau et systèmes d'exploitation réels. Avec Selenium Python, vous pouvez écrire des scripts de test robustes pour automatiser les tests d'applications Web, garantissant ainsi leur fonctionnalité sur différents navigateurs et plates-formes. Les développeurs et les testeurs peuvent même exécuter des tests en parallèle sur plusieurs combinaisons, ce qui les aide à livrer des versions de qualité à une vitesse légère.

Bases du sélénium

  • Bases du sélénium
  • Composants du sélénium
  • Applications et utilisations
  • Caractéristiques
  • Limites

Notions de base sur Selenium Python

  • Introduction et installation de Selenium Python
  • Navigation dans les liens à l'aide de la méthode get
  • Interagir avec la page Web
  • Localisation d'éléments uniques
  • Localisation de plusieurs éléments
  • Stratégies de localisation – Selenium Python
  • Écrire des tests à l'aide de Selenium Python

Stratégies de localisation

  • Localisation d'éléments uniques –
    • find_element_by_id()
    • find_element_by_name()
    • find_element_by_xpath()
    • find_element_by_link_text()
    • find_element_by_partial_link_text()
    • find_element_by_tag_name()
    • find_element_by_class_name()
    • find_element_by_css_selector()
  • Localisation de plusieurs éléments –
    • find_elements_by_name()
    • find_elements_by_xpath()
    • find_elements_by_link_text()
    • find_element_by_partial_link_text()
    • find_elements_by_tag_name()
    • find_elements_by_class_name()
    • find_elements_by_css_selector()

Attend

  • Attentes explicites
  • Attentes implicites
Chaînes d'action

  • Bases des chaînes d'action
  • Cliquez sur
  • cliquez_et_hold
  • contexte_clic
  • double_cliquez
  • glisser déposer
  • touche Bas
  • clé_up
  • move_by_offset
  • move_to_element
  • move_to_element_with_offset
  • libérer
  • réinitialiser_actions
  • envoyer_clés

Avancé en Selenium Python –

  • Gestion des exceptions – Selenium Python
  • Clés spéciales dans Selenium Python
  • Comment gérer les invites d’alerte dans Selenium Python ?
  • Ajout et suppression de cookies dans Selenium Python
  • Comment avancer et reculer dans l'Histoire en utilisant Selenium Python ?
  • Clés spéciales dans Selenium Python
  • Assertion dans Selenium WebDriver à l'aide de TestNg
  • Astuces Python au sélénium
  • Modèle d'objet de page (POM)

Exemples de projets

  • WhatsApp en utilisant Python !
  • Automatisation du navigateur à l'aide de Selenium
  • Connexion Facebook à l'aide de Python
  • Automatisation de la publication de joyeux anniversaire sur Facebook à l'aide de Selenium
  • Comment accéder à la fenêtre de connexion contextuelle dans Selenium à l'aide de Python
  • SMS Bomber utilisant du sélénium

Pilote Web Sélénium

Selenium Webdriver est le parent de toutes les méthodes et classes utilisées dans Selenium Python. C'est la force motrice de Selenium qui nous permet d'effectuer diverses opérations sur plusieurs éléments d'une page Web. Le pilote dispose de diverses méthodes et attributs que l'on peut utiliser pour automatiser les tests dans Selenium Python. Pour vérifier comment utiliser Webdriver, visitez –

WebElement dans Selenium Python

. Différentes méthodes que l'on peut utiliser dans Selenium Python sont -

Méthode Description
ajouter_cookie Ajoute un cookie à votre session en cours.
dos Recul d’un pas dans l’historique du navigateur.
fermer Ferme la fenêtre actuelle.
créer_web_element Crée un élément Web avec l'élément_id spécifié.
delete_all_cookies Supprimez tous les cookies dans le cadre de la session.
supprimer_cookie Supprime un seul cookie portant le nom donné.
exécuter_async_script Exécute de manière asynchrone JavaScript dans la fenêtre/le cadre actuel.
exécuter_script Exécute JavaScript de manière synchrone dans la fenêtre/le cadre actuel.
avant Avance d’un pas dans l’historique du navigateur.
fullscreen_window Appelle l’opération « plein écran » spécifique au gestionnaire de fenêtres
get_cookie Obtenez un seul cookie par nom. Renvoie le cookie s'il est trouvé, Aucun sinon.
get_cookies Renvoie un ensemble de dictionnaires, correspondant aux cookies visibles dans la session en cours.
get_log Obtient le journal pour un type de journal donné
get_screenshot_as_base64 Obtient la capture d'écran de la fenêtre actuelle sous forme de chaîne codée en base64, utile dans les images intégrées en HTML.
get_screenshot_as_file Enregistre une capture d'écran de la fenêtre actuelle dans un fichier image PNG.
get_screenshot_as_png Obtient la capture d'écran de la fenêtre actuelle sous forme de données binaires.
get_window_position Obtient la position x, y de la fenêtre actuelle.
get_window_rect Obtient les coordonnées x, y de la fenêtre ainsi que la hauteur et la largeur de la fenêtre actuelle.
get_window_size Obtient la largeur et la hauteur de la fenêtre actuelle.
implicitement_attendre Définit un délai d'attente persistant pour attendre implicitement qu'un élément soit trouvé,
maximiser_fenêtre Maximise la fenêtre actuelle utilisée par Webdriver
minimiser_window Appelle l'opération de « réduction » spécifique au gestionnaire de fenêtres
quitter Quitte le pilote et ferme toutes les fenêtres associées.
rafraîchir Actualise la page actuelle.
set_page_load_timeout Définissez le temps d'attente pour la fin du chargement d'une page avant de générer une erreur.
set_script_timeout Définissez la durée pendant laquelle le script doit attendre lors d'un appelexecute_async_script avant de générer une erreur.
set_window_position Définit la position x, y de la fenêtre actuelle. (fenêtre.moveTo)
set_window_rect Définit les coordonnées x, y de la fenêtre ainsi que la hauteur et la largeur de la fenêtre actuelle.
URL_actuelle Obtient l'URL de la page actuelle.
poignée_de_fenêtre_actuelle Renvoie le handle de la fenêtre actuelle.
page_source Obtient la source de la page actuelle.
titre Renvoie le titre de la page actuelle.

Élément Web Sélénium

Un élément peut être une balise, une propriété ou quoi que ce soit, c'est une instance de classe

sélénium.webdriver.remote.webelement.WebElement

. Après avoir trouvé un élément à l'écran à l'aide de Selenium, vous souhaiterez peut-être cliquer dessus ou rechercher des sous-éléments, etc. Selenium fournit des méthodes autour de ce WebElement de Selenium. Pour découvrir comment utiliser l'objet élément dans le sélénium, visitez -

. Différentes méthodes que l'on peut utiliser avec un élément dans Selenium Python sont décrites ci-dessous -

Méthodes des éléments Description
est sélectionné() La méthode is_selected est utilisée pour vérifier si l'élément est sélectionné ou non. Il renvoie une valeur booléenne True ou False.
est affiché() La méthode is_displayed est utilisée pour vérifier si l'élément est visible ou non pour l'utilisateur. Il renvoie une valeur booléenne True ou False.
est autorisé() La méthode is_enabled est utilisée pour vérifier si l'élément est activé ou non. Il renvoie une valeur booléenne True ou False.
get_property() La méthode get_property est utilisée pour obtenir les propriétés d'un élément, telles que l'obtention de la propriété text_length de la balise d'ancrage.
get_attribute() La méthode get_attribute est utilisée pour obtenir les attributs d'un élément, tels que l'obtention de l'attribut href de la balise d'ancrage.
envoyer_clés() La méthode send_keys est utilisée pour envoyer du texte à n'importe quel champ, tel que le champ de saisie d'un formulaire ou même pour ancrer un paragraphe de balise, etc.
Cliquez sur() La méthode click est utilisée pour cliquer sur n'importe quel élément, tel qu'une balise d'ancrage, un lien, etc.
clair() La méthode clear est utilisée pour effacer le texte de n'importe quel champ, tel que le champ de saisie d'un formulaire ou même pour ancrer un paragraphe de balise, etc.
capture d'écran() La méthode de capture d'écran est utilisée pour enregistrer une capture d'écran de l'élément actuel dans un fichier PNG.
soumettre() La méthode submit est utilisée pour soumettre un formulaire après avoir envoyé des données à un formulaire.
value_of_css_property() La méthode value_of_css_property est utilisée pour obtenir la valeur d'une propriété CSS pour un élément.
emplacement La méthode de localisation est utilisée pour obtenir l'emplacement de l'élément dans le canevas rendu.
capture d'écran_as_png La méthode screenshot_as_png est utilisée pour obtenir la capture d'écran de l'élément actuel sous forme de données binaires.
parent La méthode parent est utilisée pour obtenir une référence interne à l'instance WebDriver à partir de laquelle cet élément a été trouvé.
taille La méthode size est utilisée pour obtenir la taille de l’élément actuel.
nom_tag La méthode tag_name est utilisée pour obtenir le nom de la balise à laquelle vous faites référence.
texte La méthode text est utilisée pour obtenir le texte de l’élément actuel.
rectifier La méthode rect est utilisée pour obtenir un dictionnaire avec la taille et l’emplacement de l’élément.
capture d'écran_as_base64 La méthode capture d'écran_as_base64 est utilisée pour obtenir la capture d'écran de l'élément actuel sous forme de chaîne codée en base64.