Selenium Python Tutorial cu WebDriver (Exemplu)
โก Rezumat inteligent
Selenium implementate cu Python asociazฤ biblioteca de automatizare WebDriver cu Python sintaxฤ concisฤ pentru testarea aplicaศiilor web pe Firefox, Chrome ศi Internet Explorer. Aceastฤ demonstraศie configureazฤ PyDev in Eclipse, scrie scripturi de conectare ศi explicฤ de ce echipele preferฤ Python peste Java.

Selenium implementate cu Python
Selenium sprijinฤ Python ศi astfel poate fi utilizat ca Selenium WebDriver cu Python pentru testare.
- Python este uศor รฎn comparaศie cu alte limbaje de programare, avรขnd o sintaxฤ mult mai puศin verbosฤ.
- Python API-urile vฤ permit sฤ vฤ conectaศi la browser prin intermediul Selenium.
- Selenium trimite standardul Python comenzi cฤtre diferite browsere, รฎn ciuda variaศiilor รฎn designul browserului lor.
Poศi alerga Selenium implementate cu Python scripturi pentru Firefox, Chrome, IE etc. pe diferite sisteme de operare.
Ce Este Python?
Python este un limbaj de scripting de nivel รฎnalt orientat pe obiecte. Este proiectat รฎntr-un mod uศor de utilizat. Python foloseศte cuvinte cheie simple รฎn limba englezฤ, uศor de interpretat. Are mai puศine complicaศii sintactice decรขt oricare altul limbaj de programare.
Vedeศi cรขteva dintre exemplele din tabelul de mai jos.
| Cuvรขnt cheie | Sens | Folosire |
|---|---|---|
| Elif | Altfel dacฤ | Altfel dacฤ |
| altfel | Altfel | dacฤ: X; elif: Y; altceva: J |
| cu excepศia | Faceศi asta dacฤ apare o excepศie | cu excepศia ValueError, a: print a |
| Exec | Rulaศi ศir ca Python | exec โprinteazฤ โbunฤ lume!โ |
Ce Este Selenium?
Selenium este un instrument pentru testarea aplicaศiei web. Puteศi face acest lucru รฎn diverse moduri, de exemplu:
- Permiteศi-i sฤ apese pe butoane.
- Introduceศi conศinut รฎn formulare.
- Parcurgeศi site-ul pentru a verifica dacฤ totul este โOKโ ศi aศa mai departe.
Cum se instaleazฤ ศi se configureazฤ PyDev in Eclipse
PyDev este Python mediu de dezvoltare pentru Eclipse.
Pas 1) Acceseazฤ Eclipse Marketplace. Ajutor > Instalare software nou.
Urmฤtorul pas este instalarea โpydev IDEโ pentru Eclipse.
Pas 2) รn acest pas:
- Cฤutaศi โhttp://pydev.org/updatesโ รฎn Lucru cu, apoi
- Selectaศi toate elementele listate ศi faceศi clic de douฤ ori pe Urmฤtorul.
- Acceptaศi Acordul de licenศฤ ศi faceศi clic pe Finalizare.
Pas 3) Este posibil sฤ aparฤ un avertisment de securitate. Faceศi clic pe โInstalare oricumโ.
Pas 4) Setaศi preferinศele pentru a putea utiliza Python conform nevoilor proiectului. Accesaศi Fereastrฤ > Preferinศe > PyDev > Interpret > Python Interpret.
Setaศi valoarea implicitฤ Python Interpret, aศa cum aศi setat Java compilator pentru rulare Java cod. Pentru a schimba numele interpretorului, faceศi clic pe butonul Cฤutare dupฤ python/pypy exe.
Pas 5) รn acest pas, daศi โnumele interpretuluiโ ศi calea fiศierului โexeโ. Python.
- Faceศi clic pe โRฤsfoiศiโ ศi gฤsiศi python.exe unde l-aศi instalat Python.
- Faceศi clic pe butonul โOKโ.
- Selectaศi toate folderele ศi faceศi clic pe OK.
- Faceศi clic pe โAplicaศi ศi รฎnchideศiโ.
Pas 6) Creaศi un proiect nou รฎn Pythonรn acest pas:
- Click dreapta PyDev Explorer de pachete > Nou.
- Selectaศi opศiunea altele.
- Selectaศi "PyDev > PyDev Proiect".
- Apฤsaศi butonul โUrmฤtorulโ.
- Denumiศi-vฤ proiectul.
- Faceศi clic pe โTerminareโ.
Puteศi vedea noul Python (PyDev) este creat proiectul.
Pas 7) Dupฤ crearea 'PyDev Proiect', vei crea un nou Python pachet.
- Faceศi clic dreapta pe Proiect > Nou > PyDev Pachet.
- Denumiศi pachetul ศi faceศi clic pe Finalizare.
Pas 8) Dacฤ vedeศi รฎn captura de ecran de mai jos, este creat un pachet nou.
Apoi, creaศi un PyDev modul. Modulul conศine Python fiศiere pentru iniศializare, ale cฤror funcศii pot fi importate รฎntr-un alt modul, evitรขnd rescrierea programului.
Pas 9) Creaza un nou PyDev modul. Faceศi clic dreapta pe pachet > Nou > PyDev modul.
Denumiศi modulul ศi faceศi clic pe โFinalizareโ.
Selectaศi ศablon gol ศi faceศi clic pe โOKโ.
Pas 10) Scrieศi codul pentru Selenium implementate cu Python aศa cum se aratฤ mai jos.
Cum se creeazฤ scripturi de testare รฎn Selenium implementate cu Python
รn acest Selenium WebDriver cu Python De exemplu, am automatizat โpagina de conectare Facebookโ folosind Firefox conducฤtor auto.
Selenium implementate cu Python Exemplul 1: Conectaศi-vฤ la 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()
Instantaneu al Code
Explicaศia codului
- Code linia 1: Din modulul Selenium, importaศi fiศierul webdriver.
- Code linia 2: Din modulul Selenium, importaศi Keys.
- Code linia 3: user_name este o variabilฤ utilizatฤ pentru a stoca valoarea numelui de utilizator.
- Code linia 4: Variabila โpasswordโ va fi utilizatฤ pentru a stoca valoarea parolei.
- Code linia 5: Iniศializare โFirefoxโ fฤcรขnd un obiect din ea.
- Code linia 6: Metoda โdriver.getโ navigheazฤ la pagina datฤ de URLWebDriver aศteaptฤ pรขnฤ cรขnd pagina s-a รฎncฤrcat complet รฎnainte de a reda controlul scriptului tฤu.
- Code linia 7: Gฤsiศi elementul casetei de text unde trebuie scris โe-mailulโ.
- Code linia 8: Trimiteศi valorile la secศiunea de e-mail.
- Code linia 9: La fel ศi pentru parolฤ.
- Code linia 10: Trimiteศi valori cฤtre secศiunea de parole.
- Code linia 11: element.send_keys(Keys.RETURN) apasฤ Enter dupฤ ce valorile sunt inserate.
- Code linia 12: Aproape.
ieศire: Se introduc valorile numelui de utilizator โguru99โ ศi ale parolei.
Pagina de Facebook se va conecta cu adresa de e-mail ศi parola. Pagina s-a deschis (vezi imaginea de mai jos).
Selenium implementate cu Python Exemplul 2: Conectaศi-vฤ la Facebook ศi verificaศi titlul
รn acest exemplu, vom deschide o paginฤ de autentificare, vom completa cรขmpurile obligatorii โnume de utilizatorโ ศi โparolฤโ ศi vom verifica titlul paginii.
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"
Instantaneu al codului
Explicaศia codului:
- Code liniile 1-2: Importaศi pachete de seleniu.
- Code linia 4: iniศializa Firefox prin crearea unui obiect.
- Code linia 6: Obศineศi pagina de conectare (Facebook).
- Code liniile 8-10: Preia numele de utilizator, cรขmpurile de introducere a parolei ศi butonul de trimitere.
- Code liniile 11-12: Introduceศi datele รฎn cรขmpurile de introducere a numelui de utilizator ศi a parolei.
- Code linia 14: Faceศi clic pe butonul โTrimiteศiโ.
- Code linia 15: Creaศi un obiect de aศteptare cu un timeout de 5 secunde.
- Code linia 16: Captureazฤ titlul din obiectul โbrowserโ.
- Code linia 17: Testaศi ศirul de titlu capturat cu โFacebookโ.
De ce sฤ alegi Python peste Java in Selenium
Cรขteva puncte favorabile Python peste Java de folosit cu Selenium sunt:
- Java programele tind sฤ ruleze mai lent รฎn comparaศie cu Python programe.
- Java foloseศte acolade tradiศionale pentru a รฎncepe ศi a termina blocurile, รฎn timp ce Python foloseศte indentarea.
- Java foloseศte static typing, รn timp ce Python este tastat dinamic.
- Python este mai simplu ศi mai compact รฎn comparaศie cu Java.




















