Selenium Python WebDriverrel kapcsolatos oktatóanyag (példa)

⚡ Okos összefoglaló

Selenium ahol Python párosítja a WebDriver automatizálási könyvtárat a következővel: Python tömör szintaxis webes alkalmazások teszteléséhez Firefox, a Chrome-ot és az Internet Explorert. Ez az útmutató a következőket konfigurálja: PyDev in Eclipse, bejelentkezési szkripteket ír, és elmagyarázza, miért részesítik előnyben a csapatok Python felett Java.

  • 🐍 Python Előny: Less a részletes szintaxis teszi Selenium a szkriptek könnyebben olvashatók és karbantarthatók.
  • 🌐 WebDriver: Szabványos parancsokat küld ide: Firefox, Chrome és IE böngészőkben, a böngésző felépítésétől függetlenül.
  • 🧩 PyDev Beállítás: Telepítse a PyDev bővítmény Eclipse és állítsa be Python tolmács.
  • 📝 Bejelentkezési szkriptek: Mezők megkeresése azonosító alapján, kulcsok küldése és az űrlap automatikus elküldése.
  • Címállítás: A WebDriverWait plusz assert bejelentkezés után ellenőrzi az oldal címét.
  • 🤖 AI Assist: A mesterséges intelligencia eszközei helymeghatározókat generálnak, és Selenium Python szkriptek egyszerű promptokból.

Selenium Python Oktatóanyag a WebDriverrel

Selenium ahol Python

Selenium támogatja Python és így felhasználható mint Selenium WebDriver with Python teszteléshez.

  • Python Könnyű más programozási nyelvekhez képest, sokkal kevésbé részletes a szintaxisa.
  • Az Python Az API-k segítségével kapcsolódhat a böngészőhöz Selenium.
  • Selenium elküldi a szabványt Python parancsokat a különböző böngészőknek, a böngészőik felépítésében mutatkozó eltérések ellenére.

Futtathatod Selenium ahol Python szkriptek Firefox, Chrome, IE stb. különböző operációs rendszereken.

Mi a Python?

Python egy magas szintű objektum-orientált szkriptnyelv. Felhasználóbarát módon van kialakítva. Python egyszerű angol kulcsszavakat használ, amelyek könnyen értelmezhetők. Kevesebb szintaktikai bonyodalommal rendelkezik, mint bármely más programozási nyelv.

Nézzen meg néhány példát az alábbi táblázatban.

Kulcsszó Jelentés Használat
elif Különben ha Különben ha
más Más ha: X; elif: Y; más: J
kivéve Tedd ezt, ha kivétel történik kivéve ValueError, a: nyomtatás a
exec Futtassa a karakterláncot mint Python exec 'nyomtassa ki: „hello world!”

Mi a Selenium?

Selenium egy eszköz webes alkalmazásod teszteléséhez. Ezt többféleképpen is megteheted, például:

  • Engedélyezze a gombok megérintését.
  • Tartalom bevitele űrlapokba.
  • Nézze át webhelyét, és ellenőrizze, hogy minden rendben van-e, és így tovább.

Hogyan kell telepíteni és konfigurálni PyDev in Eclipse

PyDev a Python fejlesztői környezet számára Eclipse.

Step 1) Tovább Eclipse Piactér. Súgó > Új szoftver telepítése.

Telepítés és konfigurálás PyDev in Eclipse

A következő lépés a „pydev IDE” telepítése a következőhöz: Eclipse.

Step 2) Ebben a lépésben:

  1. Keresse meg a „http://pydev.org/updates” kifejezést a Munkavégzés területen, majd
  2. Jelölje ki az összes felsorolt ​​elemet, majd kattintson duplán a Tovább gombra.
  3. Fogadja el a licencszerződést, és kattintson a Befejezés gombra.

Telepítés és konfigurálás PyDev in Eclipse

Step 3) Biztonsági figyelmeztetéssel találkozhat. Kattintson a „Telepítés mindenképpen” gombra.

Telepítés és konfigurálás PyDev in Eclipse

Step 4) Állítsa be a beállításokat, hogy használni tudja Python a projekt igényei szerint. Lépjen az Ablak > Beállítások > menüpontra. PyDev > Tolmács > Python Tolmács.

Telepítés és konfigurálás PyDev in Eclipse

Az alapértelmezett beállítás Python Tolmács, ahogy beállítottad a Java fordító futtatásához Java kód. Az interpreter nevének módosításához kattintson a Python/pypy exe keresése gombra.

Telepítés és konfigurálás PyDev in Eclipse

Step 5) Ebben a lépésben adja meg a „tolmács nevét” és az „exe” fájl elérési útját Python.

  1. Kattintson a "Tallózás" gombra, és keresse meg a python.exe fájlt, ahol telepítette Python.
  2. Kattintson az „OK” gombra.
  3. Jelölje ki az összes mappát, majd kattintson az OK gombra.
  4. Kattintson az „Alkalmaz és bezár” gombra.

Telepítés és konfigurálás PyDev in Eclipse

Step 6) Hozz létre egy új projektet a PythonEbben a lépésben:

  1. Jobb klikk PyDev Package Explorer > New.
  2. Válassza a többi lehetőséget.

Telepítés és konfigurálás PyDev in Eclipse

  1. Válassza ki a "PyDev > PyDev Projekt”.
  2. Nyomja meg a „Tovább” gombot.

Telepítés és konfigurálás PyDev in Eclipse

  1. Nevezd el a projektedet.
  2. Kattintson a "Befejezés" gombra.

Telepítés és konfigurálás PyDev in Eclipse

Meg lehet nézni az újat Python (PyDev) projekt létrejön.

Step 7) Miután létrehozta a 'PyDev Project', akkor létrehoz egy újat Python csomag.

  1. Kattintson jobb gombbal a Projekt > Új > elemre PyDev Csomag.
  2. Nevezd el a csomagot, majd kattints a Befejezés gombra.

Telepítés és konfigurálás PyDev in Eclipse

Telepítés és konfigurálás PyDev in Eclipse

Step 8) Ha az alábbi képernyőképen látható, akkor egy új csomag jött létre.

Telepítés és konfigurálás PyDev in Eclipse

Ezután hozzon létre a PyDev modul. A modul tartalmazza Python inicializáláshoz szükséges fájlok, amelyek függvényei importálhatók egy másik modulba, elkerülve a program újraírását.

Step 9) Újat csinálni PyDev modul. Kattintson jobb gombbal a csomag > Új > elemre PyDev modult.

Telepítés és konfigurálás PyDev in Eclipse

Nevezd el a modult, majd kattints a „Befejezés” gombra.

Telepítés és konfigurálás PyDev in Eclipse

Válassza az Üres sablon lehetőséget, majd kattintson az „OK” gombra.

Telepítés és konfigurálás PyDev in Eclipse

Step 10) Írja meg a kódját Selenium ahol Python az alábbiak szerint.

Telepítés és konfigurálás PyDev in Eclipse

Hogyan lehet tesztszkripteket létrehozni Selenium ahol Python

Ebben Selenium WebDriver with Python például automatizáltuk a „Facebook bejelentkezési oldalt” a következővel: Firefox sofőr.

Selenium ahol Python 1. példa: Jelentkezzen be a Facebookba

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

Pillanatkép a Code

Hozzon létre teszt szkripteket Selenium ahol Python

A kód magyarázata

  • Code 1. sor: A szelén modulból importáld a webdriver fájlt.
  • Code 2. sor: A szelén modulból importáld a kulcsokat.
  • Code 3. sor: A user_name egy változó, amely a felhasználónév értékét tárolja.
  • Code 4. sor: A „password” változó a jelszó értékének tárolására szolgál.
  • Code 5. sor: InicializálásFirefox” tárgyat készítve belőle.
  • Code 6. sor: A „driver.get” metódus a megadott oldalra navigál. URLA WebDriver megvárja, amíg az oldal teljesen betöltődik, mielőtt visszaadja az irányítást a szkriptnek.
  • Code 7. sor: Keresd meg a szövegdoboz elemet, ahová az „email” szót kell írni.
  • Code 8. sor: Küldd el az értékeket az e-mail részlegbe.
  • Code 9. sor: Ugyanez a jelszónál is.
  • Code 10. sor: Értékek küldése a jelszó szakaszba.
  • Code 11. sor: Az element.send_keys(Keys.RETURN) az értékek beszúrása után lenyomja az Enter billentyűt.
  • Code 12. sor: Zárja be.

output: A „guru99” felhasználónév és jelszó értékei be vannak írva.

Hozzon létre teszt szkripteket Selenium ahol Python

A Facebook oldal bejelentkezik az e-mail címmel és jelszóval. Az oldal megnyílt (lásd az alábbi képet).

Hozzon létre teszt szkripteket Selenium ahol Python

Selenium ahol Python 2. példa: Bejelentkezés a Facebookra és a cím ellenőrzése

Ebben a példában megnyitunk egy bejelentkezési oldalt, kitöltjük a kötelező „felhasználónév” és „jelszó” mezőket, és ellenőrizzük az oldal címét.

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"

Pillanatkép a kódról

Hozzon létre teszt szkripteket Selenium ahol Python

A kód magyarázata:

  • Code 1-2. sor: Szeléncsomagok importja.
  • Code 4. sor: inicializálása Firefox egy objektum létrehozásával.
  • Code 6. sor: Szerezd meg a bejelentkezési oldalt (Facebook).
  • Code 8-10. sor: Felhasználónév, jelszó beviteli mezők és a küldés gomb lekérése.
  • Code 11-12. sor: Írja be az adatokat a felhasználónév és jelszó beviteli mezőkbe.
  • Code 14. sor: Kattintson a „Küldés” gombra.
  • Code 15. sor: Hozz létre egy wait objektumot 5 másodperces időtúllépéssel.
  • Code 16. sor: Rögzítse a címet a „böngésző” objektumból.
  • Code 17. sor: Teszteld a rögzített címkarakterláncot a „Facebook” használatával.

Miért érdemes választani Python felett Java in Selenium

Néhány pont, ami mellette szól Python felett Java együtt használni Selenium vannak:

  1. Java programok lassabban futnak, mint a Python programokat.
  2. Java hagyományos zárójeleket használ a blokkok elindításához és befejezéséhez, miközben Python behúzást használ.
  3. Java statikus terhelést alkalmazping, Míg a Python dinamikusan van beírva.
  4. Python -hoz képest egyszerűbb és kompaktabb Java.

GYIK

Futtassa a pip telepítését a szeléniumban. Modern Selenium hajókkal Selenium Manager, amely automatikusan letölti a megfelelő böngészőillesztőt, így nincs szükség manuális chromedriver beállításra.

A WebDriver a Selenium felület, amely egy valódi böngészőt vezérel, parancsokat küldve a Firefox, Chrome vagy Edge böngészővel vezérelheti a navigációt, a kattintásokat és az űrlapbevitelt.

Selenium 4 eltávolította a find_element_by_id elemet. Használja a By osztályt: from selenium.webdriver.common.by import By, then driver.find_element(By.ID, “email”).

Az implicit várakozás egy meghatározott ideig lekérdezi a DOM-ot. Az explicit várakozás (WebDriverWait) egy adott feltétel teljesüléséig szünetel. Kerülje a keverésüket az időzítés kiszámíthatatlanságának elkerülése érdekében.

Nem. PyDev in Eclipse ez az egyik lehetőség. Futtathatod is Selenium Python szkriptek PyCharm, VS Code, vagy a parancssorból.

Selenium WebDriver támogatás Firefox, Chrome, Edge, Safari és Internet Explorer böngészők. Ugyanez Python szkript swap-pel futtatja át őketping a sofőr.

Igen. Az olyan mesterséges intelligencia asszisztensek, mint a ChatGPT, egyszerű nyelvű tesztleírást alakítanak át… Selenium Python kódot, lokátorokat javasol, és a régi find_element_by_id hívásokat By szintaxisra konvertálja.

Igen. A GitHub Copilot stabil lokátorokat javasol, elmagyarázza a NoSuchElementException hibákat, és explicit várakozásokat javasol, csökkentve ezzel a dinamikus oldalakon előforduló egyenetlen teszteket.

Foglald össze ezt a bejegyzést a következőképpen: