Selenium Webdriver mit Python: Tutorial mit Beispiel

Inhaltsverzeichnis:

Anonim

Selenium unterstützt Python und kann daher als Selenium WebDriver mit Python zum Testen verwendet werden.

  • Python ist im Vergleich zu anderen Programmiersprachen einfach und weitaus weniger ausführlich.
  • Mit den Python-APIs können Sie über Selenium eine Verbindung zum Browser herstellen.
  • Selenium sendet die Standard-Python-Befehle an verschiedene Browser, obwohl das Design des Browsers unterschiedlich ist.

Sie können Selenium mit Python-Skripten für Firefox, Chrome, IE usw. auf verschiedenen Betriebssystemen ausführen.

In diesem Selenium Python-Tutorial lernen Sie:

  • Was ist Python?
  • Was ist Selen?
  • Warum sollten Sie in Selenium Python anstelle von Java wählen?
  • So installieren und konfigurieren Sie PyDev in Eclipse
  • So erstellen Sie Testskripte in Selen mit Python

Was ist Python?

Python ist eine objektorientierte Skriptsprache auf hoher Ebene. Es ist benutzerfreundlich gestaltet. Python verwendet einfache englische Schlüsselwörter, die leicht zu interpretieren sind. Es hat weniger Syntaxkomplikationen als alle anderen Programmiersprachen.

Sehen Sie sich einige der Beispiele in der folgenden Tabelle an.

Stichwort Bedeutung Verwendung
elif Sonst wenn Sonst wenn
sonst Sonst wenn: X; elif: Y; sonst: J.
außer Tun Sie dies, wenn eine Ausnahme auftritt, außer ValueError, a: print a
exec Führen Sie den String als Python aus exec 'print "Hallo Welt!"'

Was ist Selen?

Selen ist ein Tool zum Testen Ihrer Webanwendung. Sie können dies beispielsweise auf verschiedene Arten tun

  • Lassen Sie es auf Schaltflächen tippen
  • Geben Sie Inhalte in Strukturen ein
  • Überfliegen Sie Ihre Website, um zu überprüfen, ob alles in Ordnung ist und so weiter.

Warum sollten Sie in Selenium Python anstelle von Java wählen?

Einige Punkte, die Python gegenüber Java für die Verwendung mit Selen bevorzugen, sind:

  1. Java-Programme laufen im Vergleich zu Python-Programmen tendenziell langsamer.
  2. Java verwendet traditionelle Klammern, um Blöcke zu starten und zu beenden, während Python Einrückungen verwendet.
  3. Java verwendet statische Typisierung, während Python dynamisch typisiert wird.
  4. Python ist einfacher und kompakter als Java.

So installieren und konfigurieren Sie PyDev in Eclipse

PyDev ist eine Python-Entwicklungsumgebung für Eclipse.

Schritt 1) Ich muss zum Eclipse Marketplace. Hilfe> Neue Software installieren

Der nächste Schritt ist die Installation von "pydev IDE" für Eclipse.

Schritt 2) In diesem Schritt

  1. Suchen Sie nach "http://pydev.org/updates" in "Arbeiten mit 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 Fertig stellen.

Schritt 3) Möglicherweise tritt eine Sicherheitswarnung auf. Klicken Sie auf "Auf jeden Fall installieren".

Schritt 4) Nun , in diesem Schritt legen Sie Einstellungen festlegen werden. Mit Hilfe der Option "Einstellungen" können Sie Python gemäß den Projektanforderungen verwenden.

Gehen Sie zu Fenster> Einstellungen> PyDev> Interpreter> Python-Interpreter.

Legen wir den Standard-Python-Interpreter fest. Es ist genau so, als müssten Sie den Java-Compiler für die Ausführung eines Java-Codes festlegen. Um den Namen des Interpreters zu ändern, klicken Sie auf Nach Python / Pypy-Exe-Schaltfläche suchen.

Schritt 5) Geben Sie in diesem Schritt den "Interpreter-Namen" und den "exe" -Dateipfad von Python an.

  1. Klicken Sie auf "Durchsuchen" und suchen Sie die Datei "python.exe", in der Sie Python installiert haben.
  2. Klicken Sie auf die Schaltfläche "OK".
  3. Wählen Sie den gesamten Ordner aus und klicken Sie auf OK
  4. Klicken Sie auf "Übernehmen und schließen".

Schritt 6) Erstellen Sie ein neues Projekt in Python. In diesem Schritt

  1. Klicken Sie mit der rechten Maustaste auf PyDev Package Explorer> Neu.
  2. Wählen Sie die Option Andere.

  1. Wählen Sie "PyDev> PyDev-Projekt".
  2. Klicken Sie auf die Schaltfläche "Weiter".

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

Sie können sehen, dass das neue Python-Projekt (PyDev) erstellt wurde.

Schritt 7) In diesem Schritt

Nach dem Erstellen von 'PyDev Project' erstellen Sie ein neues Python-Paket.

  1. Klicken Sie mit der rechten Maustaste auf Projekt> Neu> PyDev-Paket.
  2. Benennen Sie Ihr Paket und klicken Sie auf Fertig stellen.

Schritt 8) Wenn Sie im folgenden Screenshot sehen, wird ein neues Paket erstellt.

Nach dem Erstellen eines neuen Pakets besteht der nächste Schritt darin, das PyDev-Modul zu erstellen. Das Modul enthält einige Python-Dateien zur Initialisierung. Diese Dateien oder Funktionen aus dem Modul können in ein anderes Modul importiert werden. Es ist also nicht erforderlich, das Programm erneut zu schreiben.

Schritt 9) Erstellen Sie ein neues PyDev-Modul. Klicken Sie mit der rechten Maustaste auf Paket> Neu> PyDev-Modul.

Benennen Sie Ihr Modul und klicken Sie auf "Fertig stellen".

Wählen Sie Leere Vorlage und klicken Sie auf "OK".

Schritt 10) Schreiben Sie Ihren Code für Selen mit Python wie unten gezeigt

So erstellen Sie Testskripte in Selen mit Python

In diesem Selenium WebDriver mit Python-Beispiel haben wir die "Facebook-Anmeldeseite" mithilfe des Firefox-Treibers automatisiert.

Selenium Python Beispiel 1: Melden Sie sich bei Facebook an

von Selen Import Webdriveraus selenium.webdriver.common.keys Schlüssel importierenuser_name = "IHRE E-MAILID"password = "IHR PASSWORT"driver = webdriver.Firefox ()driver.get ("https://www.facebook.com")element = driver.find_element_by_id ("email")element.send_keys (Benutzername)element = driver.find_element_by_id ("pass")element.send_keys (Passwort)element.send_keys (Keys.RETURN)element.close ()

Momentaufnahme des Codes

Erklärung des Codes

  • Codezeile 1 : Vom Selenmodul-Webdriver importieren
  • Codezeile 2 : Importschlüssel für Selenmodule
  • Codezeile 3 : Benutzer ist eine Variable, in der Werte des Benutzernamens gespeichert werden.
  • Codezeile 4 : Die Variable "Passwort" wird verwendet, um Werte des Passworts zu speichern.
  • Codezeile 5 : In dieser Zeile initialisieren wir "FireFox", indem wir ein Objekt daraus erstellen.
  • Codezeile 6 : Die "driver.get-Methode" navigiert zu einer Seite, die von der URL angegeben wird. WebDriver wartet, bis die Seite vollständig geladen wurde (dh die Gelegenheit "Onload" wurde losgelassen), bevor die Kontrolle an Ihren Test oder Ihr Skript zurückgegeben wird.
  • Codezeile 7 : In dieser Zeile finden wir das Element des Textfelds, in das die "E-Mail" geschrieben werden muss.
  • Codezeile 8 : Jetzt senden wir die Werte an den E-Mail-Bereich
  • Codezeile 9 : Gleiches gilt für das Passwort
  • Codezeile 10 : Senden von Werten an den Kennwortbereich
  • Codezeile 11 : element.send_keys (Keys.RETURN) wird verwendet, um die Eingabetaste zu drücken, nachdem die Werte eingefügt wurden
  • Codezeile 12 : Schließen

AUSGABE

Die Werte des Benutzernamens "guru99" und des eingegebenen Passworts.

Die Facebook-Seite wird mit E-Mail und Passwort angemeldet. Seite geöffnet (siehe Bild unten)

BEISPIEL 2: Melden Sie sich bei Facebook an und überprüfen Sie den Titel

In diesem Beispiel ist

  • Wir werden eine Anmeldeseite öffnen.
  • Füllen Sie das erforderliche Feld "Benutzername" und "Passwort" aus.
  • Überprüfen Sie den Seitentitel
von Selen Import Webdriveraus selenium.webdriver.support.ui WebDriverWait importieren# Schritt 1) ​​Öffnen Sie Firefoxbrowser = webdriver.Firefox ()# Schritt 2) Navigieren Sie zu Facebookbrowser.get ("http://www.facebook.com")# Schritt 3) Suchen und geben Sie das Feld E-Mail oder Telefon ein und geben Sie das Passwort einBenutzername = browser.find_element_by_id ("email")password = browser.find_element_by_id ("pass")submit = browser.find_element_by_id ("loginbutton")username.send_keys ("IHRE E-MAILID")password.send_keys ("IHR PASSWORT")# Schritt 4) Klicken Sie auf Anmeldensubmit.click ()wait = WebDriverWait (Browser, 5)page_title = browser.titleassert page_title == "Facebook"

Schnappschuss des Codes

Erläuterung des Codes:

  • Codezeile 1-2: Importieren Sie Selenpakete
  • Codezeile 4: Initialisieren Sie Firefox, indem Sie ein Objekt erstellen
  • Codezeile 6: Anmeldeseite abrufen (Facebook)
  • Codezeile 8-10: Benutzername, Passworteingabefelder und Senden-Schaltfläche abrufen.
  • Codezeile 11-12: Geben Sie Daten in die Eingabefelder für Benutzername und Passwort ein
  • Codezeile 14: Klicken Sie auf die Schaltfläche "Senden"
  • Codezeile 15: Erstellen Sie ein Warteobjekt mit einer Zeitüberschreitung von 5 Sekunden.
  • Codezeile 16: Erfassen des Titels vom "Browser" -Objekt.
  • Codezeile 17: Testen der erfassten Titelzeichenfolge mit "Facebook"

Zusammenfassung :

  • Selen ist ein webbasiertes Open-Source-Automatisierungstool.
  • Python-Sprache wird mit Selen zum Testen verwendet. Es ist weitaus weniger ausführlich und benutzerfreundlich als jede andere Programmiersprache
  • Mit den Python-APIs können Sie über Selenium eine Verbindung zum Browser herstellen
  • Selenium kann die Standard-Python-Befehle trotz unterschiedlicher Designs des Browsers an verschiedene Browser senden.