Selenium Python Tutorial med WebDriver Eksempel

Selenium med Python

Selenium understøtninger Python og dermed kan bruges som Selenium WebDriver med Python til testning.

  • Python er let sammenlignet med andre programmeringssprog, og har langt mindre udførligt.
  • Python API'er giver dig mulighed for at oprette forbindelse til browseren gennem Selenium.
  • Selenium sender standarden Python kommandoer til forskellige browsere, på trods af variation i deres browsers design.

Du kan køre Selenium med Python scripts til Firefox, Chrome, IE osv. på forskellige Operating Systemer.

Hvad er Python?

Python er et objektorienteret scriptsprog på højt niveau. Den er designet på en brugervenlig måde. Python bruger simple engelske søgeord, som er nemme at fortolke. Det har færre syntakskomplikationer end nogen anden programmeringssprog.

Se nogle af eksemplerne i tabellen nedenfor.

Søgeord Betydning Brug
Elif Ellers hvis Ellers hvis
andet Else hvis: X; elif: Y; andet: J
undtagen gør dette, hvis der sker en undtagelse, undtagen ValueError, a: udskriv en
exec Kør streng som Python exec 'print "hej verden!"'

Hvad er Selenium?

Selenium er et værktøj til at teste din webapplikation. Det kan du f.eks. gøre på forskellige måder

  • Tillad det at trykke på knapper
  • Indtast indhold i strukturer
  • Skim dit websted for at kontrollere, om alt er "OK" og så videre.

Sådan installeres og konfigureres PyDev in Eclipse

PyDev is Python udviklingsmiljø for Eclipse.

Trin 1) Bliver nødt til Eclipse Markedsplads. Hjælp > Installer ny software

Installer og konfigurer PyDev in Eclipse

Det næste trin er at installere "pydev IDE" til eclipse.

Trin 2) I dette trin,

  1. Søg efter "http://pydev.org/updates" i Arbejde med og derefter
  2. Vælg alle anførte elementer, og klik på Næste to gange
  3. Accepter licensaftalen, og klik på Udfør.

Installer og konfigurer PyDev in Eclipse

Trin 3) Du kan støde på sikkerhedsadvarsel, klik på "Installer alligevel".

Installer og konfigurer PyDev in Eclipse

Trin 4) Nu, i dette trin angiver du præferencer. Ved hjælp af præferencemulighed, kan du bruge Python efter projektets behov.

Gå til Vindue > Præferencer > PyDev > Tolk > Python Tolk.

Installer og konfigurer PyDev in Eclipse

Lad os indstille standarden Python Tolk. Det er ligesom du skal indstille java compiler til at køre en Java kode. For at ændre fortolkerens navn, klik på Søg efter python/pypy exe-knap.

Installer og konfigurer PyDev in Eclipse

Trin 5) I dette trin skal du angive "tolkenavnet" og "exe"-filstien til Python.

  1. Klik på 'Gennemse' og find python.exe, hvor du installerede Python.
  2. Klik på knappen 'OK'.
  3. Vælg hele mappen og klik på OK
  4. Klik på "Anvend og luk".

Installer og konfigurer PyDev in Eclipse

Trin 6) Lav et nyt projekt i Python. I dette trin,

  1. Højreklik PyDev Pakke Explorer > Ny.
  2. Vælg mulighed andre.

Installer og konfigurer PyDev in Eclipse

  1. Vælg "PyDev > PyDev Projekt".
  2. Tryk på knappen 'Næste'.

Installer og konfigurer PyDev in Eclipse

  1. Navngiv dit projekt
  2. Klik på "Afslut".

Installer og konfigurer PyDev in Eclipse

Du kan se det nye Python (PyDev) projektet er oprettet.

Trin 7) I dette trin,

Efter oprettelse 'PyDev Project', vil du oprette en ny Python pakke.

  1. Højreklik på Projekt > Ny > PyDev Pakke.
  2. Navngiv din pakke, og klik på Udfør.

Installer og konfigurer PyDev in Eclipse

Installer og konfigurer PyDev in Eclipse

Trin 8) Hvis du ser nedenstående skærmbillede, oprettes en ny pakke.

Installer og konfigurer PyDev in Eclipse

Efter at have oprettet en ny pakke, er næste trin at oprettePyDev modul. Modulet indeholder nogle Python filer til initialisering. Disse filer eller funktioner fra modulet kan importeres til andre modul. Så der vil ikke være behov for at omskrive programmet igen.

Trin 9) Opret en ny PyDev modul. Højreklik på pakke > Ny > PyDev modul.

Installer og konfigurer PyDev in Eclipse

Navngiv dit modul og klik på "Udfør".

Installer og konfigurer PyDev in Eclipse

Vælg Tøm skabelon og klik på "OK".

Installer og konfigurer PyDev in Eclipse

Trin 10) Skriv din kode til Selenium med Python som vist nedenfor

Installer og konfigurer PyDev in Eclipse

Sådan opretter du testscripts i Selenium med Python

I denne Selenium WebDriver med Python for eksempel lavede vi automatisering af "Facebook login-side" ved hjælp af Firefox chauffør.

Selenium med Python Eksempel 1: Log ind på Facebook

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()

Snapshot af koden

Opret testscripts i Selenium med Python

Forklaring af koden

  • Kodelinje 1: Fra selenmodul import webdriver
  • Kodelinje 2: Fra selen modul import nøgler
  • Kodelinje 3: Bruger er en variabel, som vil blive brugt til at gemme værdier af brugernavn.
  • Kodelinje 4: Variabel "adgangskode" vil blive brugt til at gemme værdier af adgangskoden.
  • Kodelinje 5: I denne linje initialiserer vi "FireFox” ved at lave et objekt af det.
  • Kodelinje 6: "driver.get-metoden" vil navigere til en side givet af URL'en. WebDriver vil vente, indtil siden er blevet fuldstændig indlæst (det vil sige, at "onload" lejligheden er sluppet), før den vender tilbage til din test eller script.
  • Kodelinje 7: I denne linje finder vi det element i tekstboksen, hvor "e-mailen" skal skrives.
  • Kodelinje 8: Nu sender vi værdierne til e-mail-sektionen
  • Kodelinje 9: Samme for adgangskoden
  • Kodelinje 10: Sender værdier til adgangskodesektionen
  • Kodelinje 11: element.send_keys(Keys.RETURN) bruges til at trykke enter, efter at værdierne er indsat
  • Kodelinje 12: Tæt

PRODUKTION

Værdierne for brugernavnet "guru99" og adgangskoden indtastet.

Opret testscripts i Selenium med Python

Facebook-siden vil logge ind med e-mail og adgangskode. Siden åbnet (se billedet nedenfor)

Opret testscripts i Selenium med Python

Selenium med Python EKSEMPEL 2: Log ind på Facebook og tjek titel

I dette eksempel

  • Vi åbner en login-side.
  • Udfyld det påkrævede felt "brugernavn" og "adgangskode".
  • Tjek sidetitel
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"

Snapshot af koden

Opret testscripts i Selenium med Python

Forklaring af koden:

  • Kodelinje 1-2: Importer selenpakker
  • Kodelinje 4: Initialiser Firefox ved at skabe et objekt
  • Kodelinje 6: Få login-side (Facebook)
  • Kodelinje 8-10: Hent brugernavn, adgangskodeindtastningsfelter og send-knap.
  • Kodelinje 11-12: Indtast data i indtastningsfelterne for brugernavn og adgangskode
  • Kodelinje 14: Klik på knappen "Send".
  • Kodelinje 15: Opret venteobjekt med en timeout på 5 sek.
  • Kodelinje 16: Indfangning af titlen fra "browser"-objekt.
  • Kodelinje 17: Test af den fangede titelstreng med "Facebook"

Hvorfor vælge Python i løbet af Java in Selenium

Få punkter, der favoriserer Python i løbet af Java at bruge med Selenium er,

  1. Java programmer har en tendens til at køre langsommere i forhold til Python programmer.
  2. Java bruger traditionelle seler til at starte og afslutte blokke, mens Python bruger indrykning.
  3. Java anvender statisk typning, mens Python er dynamisk indtastet.
  4. Python er enklere og mere kompakt i forhold til Java.

Resumé

  • Selenium er en open source webbaseret automatiseringsværktøj.
  • Python sprog bruges med Selenium til test. Det har langt mindre udførligt og nemt at bruge end noget andet programmeringssprog
  • Python API'er giver dig mulighed for at oprette forbindelse til browseren gennem Selenium
  • Selenium kan sende standarden Python kommandoer til forskellige browsere, på trods af variation i deres browsers design.

Opsummer dette indlæg med: