Selenium Python Tutorial mit WebDriver (Beispiel)

โšก Intelligente Zusammenfassung

Selenium und Python kombiniert die WebDriver-Automatisierungsbibliothek mit Python prรคgnante Syntax zum Testen von Webanwendungen รผber FirefoxChrome und Internet Explorer. Diese Anleitung konfiguriert PyDev in Eclipseschreibt Anmeldeskripte und erklรคrt, warum Teams diese bevorzugen. Python gegenรผber Java.

  • ๐Ÿ Python Vorteil: Less wortreiche Syntax macht Selenium Skripte sind leichter zu lesen und zu warten.
  • ๐ŸŒ WebDriver: Sendet Standardbefehle an Firefox, Chrome und IE, unabhรคngig vom Browserdesign.
  • ๐Ÿงฉ PyDev Fahrwerks-Konfiguration: Installieren Sie das PyDev einstecken Eclipse und setze die Python Dolmetscher.
  • ๐Ÿ“ Anmeldeskripte: Felder anhand der ID finden, Schlรผssel senden und das Formular automatisch absenden.
  • โœ… Titelbehauptung: WebDriverWait plus assert รผberprรผft den Seitentitel nach dem Login.
  • ๐Ÿค– KI-Assistent: KI-Tools generieren Standortdaten und Selenium Python Skripte aus einfachen Eingabeaufforderungen.

Selenium Python Tutorial mit WebDriver

Selenium und Python

Selenium unterstรผtzt Python und kann somit genutzt werden als Selenium WebDriver mit Python zum Prรผfen.

  • Python ist im Vergleich zu anderen Programmiersprachen einfach, da die Syntax weitaus weniger wortreich ist.
  • Das Python APIs ermรถglichen Ihnen die Verbindung mit dem Browser รผber Selenium.
  • Selenium sendet den Standard Python Befehle an verschiedene Browser, trotz Unterschieden in deren Browserdesign.

Du kannst rennen Selenium und Python Skripte fรผr Firefox, Chrome, IE usw. auf verschiedenen Betriebssystemen.

Was ist Python?

Python ist eine objektorientierte Skriptsprache auf hohem Niveau. Sie ist benutzerfreundlich gestaltet. Python Es verwendet einfache englische Schlรผsselwรถrter, die leicht verstรคndlich sind. Es weist weniger syntaktische Komplikationen auf als jede andere Sprache. Programmiersprache.

Sehen Sie sich einige Beispiele in der folgenden Tabelle an.

Stichwort (Keyword) Bedeutung Anwendungsbereich
elif Sonst wenn Sonst wenn
sonst Else wenn: X; elif: Y; sonst: J
ausgeschlossen Fรผhren Sie diese Schritte aus, falls eine Ausnahme auftritt. auรŸer ValueError, a: a drucken
exec Fรผhren Sie die Zeichenfolge aus als Python exec 'print โ€žHallo Welt!โ€œ'

Was ist Selenium?

Selenium ist ein Tool zum Testen Ihrer Webanwendung. Dies kann auf verschiedene Arten erfolgen, zum Beispiel:

  • Erlauben Sie es, auf Schaltflรคchen zu tippen.
  • Geben Sie Inhalte in Formulare ein.
  • รœberfliegen Sie Ihre Website, um zu รผberprรผfen, ob alles โ€žOKโ€œ ist usw.

So installieren und konfigurieren Sie PyDev in Eclipse

PyDev ist das Python Entwicklungsumgebung fรผr Eclipse.

Schritt 1) Zurรผck Nach Eclipse Marktplatz. Hilfe > Neue Software installieren.

Installieren und konfigurieren PyDev in Eclipse

Der nรคchste Schritt ist die Installation der โ€žpydev IDEโ€œ fรผr Eclipse.

Schritt 2) In diesem Schritt:

  1. Suchen Sie unter โ€žArbeiten mitโ€œ nach โ€žhttp://pydev.org/updatesโ€œ und dann
  2. Wรคhlen Sie alle aufgelisteten Elemente aus und klicken Sie zweimal auf Weiter.
  3. Akzeptieren Sie die Lizenzvereinbarung und klicken Sie auf โ€žFertigstellenโ€œ.

Installieren und konfigurieren PyDev in Eclipse

Schritt 3) Mรถglicherweise wird eine Sicherheitswarnung angezeigt. Klicken Sie auf โ€žTrotzdem installierenโ€œ.

Installieren und konfigurieren PyDev in Eclipse

Schritt 4) Legen Sie Ihre Einstellungen so fest, dass Sie Folgendes verwenden kรถnnen: Python Je nach Projektanforderung. Gehen Sie zu Fenster > Einstellungen > PyDev > Dolmetscher > Python Dolmetscher.

Installieren und konfigurieren PyDev in Eclipse

Legen Sie die Standardeinstellung fest Python Interpreter, genau wie Sie es eingestellt haben Java Compiler zum Ausfรผhren Java Um den Namen des Interpreters zu รคndern, klicken Sie auf die Schaltflรคche โ€žNach python/pypy.exe suchenโ€œ.

Installieren und konfigurieren PyDev in Eclipse

Schritt 5) Geben Sie in diesem Schritt den โ€žInterpreternamenโ€œ und den โ€žexeโ€œ-Dateipfad von Python.

  1. Klicken Sie auf โ€žDurchsuchenโ€œ und suchen Sie python.exe dort, wo Sie es installiert haben. Python.
  2. Klicken Sie auf die Schaltflรคche "OK".
  3. Wรคhlen Sie alle Ordner aus und klicken Sie auf OK.
  4. Klicken Sie auf โ€žรœbernehmen und schlieรŸenโ€œ.

Installieren und konfigurieren PyDev in Eclipse

Schritt 6) Erstellen Sie ein neues Projekt in PythonIn diesem Schritt:

  1. Rechtsklick PyDev Paket-Explorer > Neu.
  2. Wรคhlen Sie die Option โ€žAndereโ€œ.

Installieren und konfigurieren PyDev in Eclipse

  1. Wรคhlen Sie "PyDev > PyDev Projekt".
  2. Drรผcken Sie die Schaltflรคche โ€žWeiterโ€œ.

Installieren und konfigurieren PyDev in Eclipse

  1. Benennen Sie Ihr Projekt.
  2. Klicken Sie auf "Fertig stellen".

Installieren und konfigurieren PyDev in Eclipse

Sie kรถnnen das neue sehen Python (PyDev) Projekt wird erstellt.

Schritt 7) Nach dem Erstellen des 'PyDev Projekt' erstellen Sie ein neues Python Paket.

  1. Klicken Sie mit der rechten Maustaste auf Projekt > Neu > PyDev Paket.
  2. Geben Sie Ihrem Paket einen Namen und klicken Sie auf Fertigstellen.

Installieren und konfigurieren PyDev in Eclipse

Installieren und konfigurieren PyDev in Eclipse

Schritt 8) Wie Sie im untenstehenden Screenshot sehen kรถnnen, wird ein neues Paket erstellt.

Installieren und konfigurieren PyDev in Eclipse

Als nรคchstes erstellen Sie eine PyDev Modul. Das Modul enthรคlt Python Dateien zur Initialisierung, deren Funktionen in ein anderes Modul importiert werden kรถnnen, wodurch das Programm nicht neu geschrieben werden muss.

Schritt 9) Erstelle eine neue PyDev Modul. Klicken Sie mit der rechten Maustaste auf Paket > Neu > PyDev Modul.

Installieren und konfigurieren PyDev in Eclipse

Benennen Sie Ihr Modul und klicken Sie auf โ€žFertigstellenโ€œ.

Installieren und konfigurieren PyDev in Eclipse

Wรคhlen Sie โ€žLeere Vorlageโ€œ und klicken Sie auf โ€žOKโ€œ.

Installieren und konfigurieren PyDev in Eclipse

Schritt 10) Schreiben Sie Ihren Code fรผr Selenium und Python wie unten gezeigt.

Installieren und konfigurieren PyDev in Eclipse

So erstellen Sie Testskripte in Selenium und Python

In dieser Selenium WebDriver mit Python Beispielsweise haben wir die Automatisierung der โ€žFacebook-Anmeldeseiteโ€œ mithilfe von โ€ฆ durchgefรผhrt. Firefox Treiber.

Selenium und Python Beispiel 1: Bei Facebook anmelden

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
user_name = "YOUR EMAILID"
password = "YOUR PASSWORD"
driver = webdriver.Firefox()
driver.get("https://www.facebook.com")
element = driver.find_element_by_id("email")
element.send_keys(user_name)
element = driver.find_element_by_id("pass")
element.send_keys(password)
element.send_keys(Keys.RETURN)
element.close()

Schnappschuss vom Code

Erstellen Sie Testskripte in Selenium und  Python

Erklรคrung des Codes

  • Code Zeile 1: Importiere webdriver aus dem Selenium-Modul.
  • Code Zeile 2: Importieren Sie Keys aus dem Selenium-Modul.
  • Code Zeile 3: user_name ist eine Variable, die dazu dient, den Wert des Benutzernamens zu speichern.
  • Code Zeile 4: Die Variable โ€žpasswordโ€œ dient zum Speichern des Passwortwerts.
  • Code Zeile 5: Initialisieren โ€žFirefoxโ€ indem man daraus ein Objekt macht.
  • Code Zeile 6: Die Methode โ€ždriver.getโ€œ navigiert zu der durch den Treiber angegebenen Seite. URLWebDriver wartet, bis die Seite vollstรคndig geladen ist, bevor die Kontrolle an Ihr Skript zurรผckgegeben wird.
  • Code Zeile 7: Suchen Sie das Textfeld, in dem โ€žE-Mailโ€œ geschrieben werden soll.
  • Code Zeile 8: Senden Sie die Werte an den E-Mail-Bereich.
  • Code Zeile 9: Gleiches gilt fรผr das Passwort.
  • Code Zeile 10: Werte an den Passwortbereich senden.
  • Code Zeile 11: element.send_keys(Keys.RETURN) drรผckt die Eingabetaste, nachdem die Werte eingefรผgt wurden.
  • Code Zeile 12: SchlieรŸen.

Ausgang: Die Werte fรผr Benutzername โ€žguru99โ€œ und Passwort werden eingegeben.

Erstellen Sie Testskripte in Selenium und  Python

Die Facebook-Seite meldet sich mit E-Mail-Adresse und Passwort an. Seite geรถffnet (siehe Abbildung unten).

Erstellen Sie Testskripte in Selenium und  Python

Selenium und Python Beispiel 2: Bei Facebook anmelden und Titel รผberprรผfen

In diesem Beispiel รถffnen wir eine Anmeldeseite, fรผllen die erforderlichen Felder โ€žBenutzernameโ€œ und โ€žPasswortโ€œ aus und รผberprรผfen den Seitentitel.

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
# Step 1) Open Firefox
browser = webdriver.Firefox()
# Step 2) Navigate to Facebook
browser.get("http://www.facebook.com")
# Step 3) Search & Enter the Email or Phone field & Enter Password
username = browser.find_element_by_id("email")
password = browser.find_element_by_id("pass")
submit   = browser.find_element_by_id("loginbutton")
username.send_keys("YOUR EMAILID")
password.send_keys("YOUR PASSWORD")
# Step 4) Click Login
submit.click()
wait = WebDriverWait( browser, 5 )
page_title = browser.title
assert page_title == "Facebook"

Schnappschuss des Codes

Erstellen Sie Testskripte in Selenium und  Python

Erklรคrung des Codes:

  • Code Zeile 1-2: Selenium-Pakete importieren.
  • Code Zeile 4: Initialisieren Firefox durch Erstellen eines Objekts.
  • Code Zeile 6: Die Anmeldeseite (Facebook) aufrufen.
  • Code Zeile 8-10: Benutzername, Passwort-Eingabefelder und Absenden-Schaltflรคche abrufen.
  • Code Zeile 11-12: Geben Sie die Daten in die Felder fรผr Benutzername und Passwort ein.
  • Code Zeile 14: Klicken Sie auf die Schaltflรคche "Senden".
  • Code Zeile 15: Erstelle ein Warteobjekt mit einem Timeout von 5 Sekunden.
  • Code Zeile 16: Den Titel aus dem โ€žBrowserโ€œ-Objekt erfassen.
  • Code Zeile 17: Testen Sie die erfasste Titelzeichenfolge mit โ€žFacebookโ€œ.

Warum wรคhlen? Python gegenรผber Java in Selenium

Ein paar Punkte, die dafรผr sprechen Python gegenรผber Java zu verwenden mit Selenium sind:

  1. Java Programme laufen tendenziell langsamer als Python Programme.
  2. Java verwendet traditionelle Klammern, um Blรถcke zu beginnen und zu beenden, wรคhrend Python verwendet Einrรผckungen.
  3. Java verwendet statisches typing, wรคhrend Python ist dynamisch typisiert.
  4. Python ist einfacher und kompakter als Java.

Hรคufig gestellte Fragen

Fรผhren Sie `pip install selenium.Modern` aus. Selenium Schiffe mit Selenium Der Manager lรคdt den passenden Browsertreiber automatisch herunter, sodass keine manuelle Einrichtung des Chromedrivers erforderlich ist.

WebDriver ist der Selenium Schnittstelle, die einen echten Browser steuert und Befehle sendet an Firefox, Chrome oder Edge zur Steuerung von Navigation, Klicks und Formulareingaben.

Selenium 4. Die Methode `find_element_by_id` wurde entfernt. Verwenden Sie stattdessen die Klasse `By`: `from selenium.webdriver.common.by import By, then driver.find_element(By.ID, โ€œemailโ€)`.

Implizites Warten fragt das DOM fรผr eine festgelegte Zeit ab. Explizites Warten (WebDriverWait) pausiert, bis eine bestimmte Bedingung erfรผllt ist. Vermeiden Sie die gleichzeitige Verwendung beider Methoden, um unvorhersehbare Laufzeiten zu verhindern.

Nein. PyDev in Eclipse ist eine Mรถglichkeit. Sie kรถnnen auch Folgendes ausfรผhren: Selenium Python Skripte in PyCharm, VS Codeoder รผber die Kommandozeile.

Selenium WebDriver unterstรผtzt FirefoxChrome, Edge, Safari und Internet Explorer. Dasselbe Python Das Skript durchlรคuft sie durch Tausch.ping der Fahrer.

Ja. KI-Assistenten wie ChatGPT wandeln eine Testbeschreibung in einfacher Sprache um in Selenium Python Code erstellen, Locatoren vorschlagen und alte find_element_by_id-Aufrufe in die By-Syntax umwandeln.

Ja. GitHub Copilot schlรคgt stabile Locators vor, erklรคrt NoSuchElementException-Fehler und empfiehlt explizite Wartezeiten, wodurch unzuverlรคssige Tests auf dynamischen Seiten reduziert werden.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: