Selenium Python Výukový program s WebDriverem (příklad)

⚡ Chytré shrnutí

Selenium s Python spáruje automatizační knihovnu WebDriver s Python stručná syntaxe pro testování webových aplikací napříč Firefox, Chrome a Internet Explorer. Tento návod konfiguruje PyDev in Eclipse, píše přihlašovací skripty a vysvětluje, proč týmy preferují Python přes Java.

  • 🐍 Python Výhoda: Less podrobná syntaxe vytváří Selenium skripty se snadněji čte a udržují.
  • 🌐 WebDriver: Odesílá standardní příkazy do Firefox, Chrome a IE bez ohledu na design prohlížeče.
  • 🧩 PyDev Setup: nainstalujte PyDev plugin v Eclipse a nastavte Python tlumočník.
  • ???? Přihlašovací skripty: Vyhledejte pole podle ID, odešlete klíče a automaticky odešlete formulář.
  • (Tj. Tvrzení o titulu: WebDriverWait plus assert ověřuje název stránky po přihlášení.
  • 🤖 AI Assist: Nástroje umělé inteligence generují lokátory a Selenium Python skripty z prostých prompts.

Selenium Python Výukový program s WebDriverem

Selenium s Python

Selenium podporuje Python a lze je tedy použít jako Selenium WebDriver s Python pro testování.

  • Python je ve srovnání s jinými programovacími jazyky snadný a má mnohem méně podrobnou syntaxi.
  • Jedno Python Rozhraní API vám umožňují připojit se k prohlížeči prostřednictvím Selenium.
  • Selenium odešle standard Python příkazy do různých prohlížečů, a to i přes rozdíly v designu jejich prohlížečů.

Můžete běžet Selenium s Python skripty pro Firefox, Chrome, IE atd. na různých operačních systémech.

Co je to Python?

Python je objektově orientovaný skriptovací jazyk na vysoké úrovni. Je navržena uživatelsky příjemným způsobem. Python používá jednoduchá anglická klíčová slova, která se snadno interpretují. Má méně syntaktických komplikací než jakýkoli jiný jazyk. programovací jazyk.

Podívejte se na některé příklady v tabulce níže.

Klíčové slovo Význam Používání
Elif Jinak kdyby Jinak kdyby
jiný Jiný jestliže: X; elif: Y; jinak: J
až na Udělejte to, pokud dojde k výjimce kromě ValueError, a: tisknout a
exec Spustit řetězec jako Python exec 'print "ahoj světe!"'

Co je to Selenium?

Selenium je nástroj pro testování vaší webové aplikace. Můžete to udělat různými způsoby, například:

  • Povolte mu klepání na tlačítka.
  • Zadejte obsah do formulářů.
  • Prohlédněte si svůj web a zkontrolujte, zda je vše „OK“ a podobně.

Jak nainstalovat a nakonfigurovat PyDev in Eclipse

PyDev je Python vývojové prostředí pro Eclipse.

Krok 1) Přejít Eclipse Marketplace. Nápověda > Instalace nového softwaru.

Instalovat a konfigurovat PyDev in Eclipse

Dalším krokem je instalace „pydev IDE“ pro Eclipse.

Krok 2) V tomto kroku:

  1. Vyhledejte „http://pydev.org/updates“ v části Práce s a poté
  2. Vyberte všechny uvedené položky a dvakrát klikněte na tlačítko Další.
  3. Přijměte licenční smlouvu a klikněte na tlačítko Dokončit.

Instalovat a konfigurovat PyDev in Eclipse

Krok 3) Může se zobrazit bezpečnostní varování. Klikněte na tlačítko „Přesto nainstalovat“.

Instalovat a konfigurovat PyDev in Eclipse

Krok 4) Nastavte si předvolby, abyste mohli používat Python dle potřeb projektu. Přejděte do nabídky Okno > Předvolby > PyDev > Tlumočník > Python Tlumočník.

Instalovat a konfigurovat PyDev in Eclipse

Nastavte výchozí Python Tlumočník, stejně jako nastavíte Java kompilátor pro spuštění Java kód. Chcete-li změnit název interpretu, klikněte na tlačítko Vyhledat python/pypy exe.

Instalovat a konfigurovat PyDev in Eclipse

Krok 5) V tomto kroku zadejte „název interpreta“ a cestu k souboru „exe“. Python.

  1. Klikněte na 'Procházet' a najděte python.exe, kde jste nainstalovali Python.
  2. Klikněte na tlačítko „OK“.
  3. Vyberte všechny složky a klikněte na OK.
  4. Klikněte na „Použít a zavřít“.

Instalovat a konfigurovat PyDev in Eclipse

Krok 6) Vytvořte nový projekt v PythonV tomto kroku:

  1. Klikněte pravým tlačítkem myši PyDev Průzkumník balíčků > Nový.
  2. Vyberte možnost ostatní.

Instalovat a konfigurovat PyDev in Eclipse

  1. Zvolte "PyDev > PyDev Projekt".
  2. Stiskněte tlačítko „Další“.

Instalovat a konfigurovat PyDev in Eclipse

  1. Pojmenujte svůj projekt.
  2. Klikněte na tlačítko Dokončit.

Instalovat a konfigurovat PyDev in Eclipse

Můžete vidět nové Python (PyDev) je vytvořen projekt.

Krok 7) Po vytvoření 'PyDev Project', vytvoříte nový Python balíček.

  1. Klikněte pravým tlačítkem na Projekt > Nový > PyDev Balík.
  2. Pojmenujte balíček a klikněte na Dokončit.

Instalovat a konfigurovat PyDev in Eclipse

Instalovat a konfigurovat PyDev in Eclipse

Krok 8) Pokud vidíte na níže uvedeném snímku obrazovky, je vytvořen nový balíček.

Instalovat a konfigurovat PyDev in Eclipse

Dále vytvořte a PyDev modul. Modul obsahuje Python soubory pro inicializaci, jejichž funkce lze importovat do jiného modulu, čímž se vyhnete přepisování programu.

Krok 9) Vytvoř nový PyDev modul. Klikněte pravým tlačítkem na balíček > Nový > PyDev modul.

Instalovat a konfigurovat PyDev in Eclipse

Pojmenujte svůj modul a klikněte na tlačítko „Dokončit“.

Instalovat a konfigurovat PyDev in Eclipse

Vyberte Prázdná šablona a klikněte na tlačítko „OK“.

Instalovat a konfigurovat PyDev in Eclipse

Krok 10) Napište svůj kód pro Selenium s Python jak je uvedeno níže.

Instalovat a konfigurovat PyDev in Eclipse

Jak vytvořit testovací skripty v Selenium s Python

V tomto Selenium WebDriver s Python Například jsme automatizovali „přihlašovací stránku na Facebook“ pomocí Firefox Řidič.

Selenium s Python Příklad 1: Přihlaste se na 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()

Snímek z Code

Vytvořte testovací skripty v Selenium s Python

Vysvětlení kódu

  • Code řádek 1: Z modulu Selenium importujte webdriver.
  • Code řádek 2: Z modulu Selenium importujte klíče.
  • Code řádek 3: user_name je proměnná používaná k uložení hodnoty uživatelského jména.
  • Code řádek 4: Proměnná „password“ bude použita k uložení hodnoty hesla.
  • Code řádek 5: InicializovatFirefox“ tím, že z toho uděláte předmět.
  • Code řádek 6: Metoda „driver.get“ přejde na stránku zadanou URLWebDriver čeká, až se stránka plně načte, než vrátí řízení vašemu skriptu.
  • Code řádek 7: Najděte prvek textového pole, kam má být napsán „e-mail“.
  • Code řádek 8: Odešlete hodnoty do sekce e-mailů.
  • Code řádek 9: Totéž platí pro heslo.
  • Code řádek 10: Odešlete hodnoty do sekce hesla.
  • Code řádek 11: Funkce element.send_keys(Keys.RETURN) stiskne klávesu Enter po vložení hodnot.
  • Code řádek 12: Zavřít.

Výstup: Zadají se hodnoty uživatelského jména „guru99“ a hesla.

Vytvořte testovací skripty v Selenium s Python

Facebooková stránka se přihlásí pomocí e-mailu a hesla. Stránka se otevřela (viz obrázek níže).

Vytvořte testovací skripty v Selenium s Python

Selenium s Python Příklad 2: Přihlášení na Facebook a kontrola názvu

V tomto příkladu otevřeme přihlašovací stránku, vyplníme povinná pole „uživatelské jméno“ a „heslo“ a zkontrolujeme název stránky.

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"

Snímek kódu

Vytvořte testovací skripty v Selenium s Python

Vysvětlení kódu:

  • Code řádek 1–2: Importovat balíčky Selenium.
  • Code řádek 4: zahájit Firefox vytvořením objektu.
  • Code řádek 6: Získejte přihlašovací stránku (Facebook).
  • Code řádek 8–10: Načtěte pole pro zadání uživatelského jména, hesla a tlačítko pro odeslání.
  • Code řádek 11–12: Zadejte údaje do vstupních polí pro uživatelské jméno a heslo.
  • Code řádek 14: Klikněte na tlačítko „Odeslat“.
  • Code řádek 15: Vytvořte objekt wait s časovým limitem 5 sekund.
  • Code řádek 16: Zachyťte název z objektu „prohlížeče“.
  • Code řádek 17: Otestujte zachycený řetězec názvu pomocí „Facebooku“.

Proč si vybrat Python přes Java in Selenium

Několik bodů, které hovoří ve prospěch Python přes Java k použití s Selenium jsou:

  1. Java programy mají tendenci běžet pomaleji ve srovnání s Python programy.
  2. Java používá tradiční závorky k zahájení a ukončení bloků, zatímco Python používá odsazení.
  3. Java využívá statický typing, Zatímco Python je dynamicky typováno.
  4. Python je jednodušší a kompaktnější ve srovnání s Java.

Nejčastější dotazy

Spusťte pip install selenium. Moderní Selenium dodává s Selenium Manager, který automaticky stáhne odpovídající ovladač prohlížeče, takže není nutné ruční nastavení ovladače ChromeDriver.

WebDriver je Selenium rozhraní, které řídí skutečný prohlížeč a odesílá příkazy do Firefox, Chrome nebo Edge pro ovládání navigace, klikání a zadávání formulářů.

Selenium 4 odstraněn find_element_by_id. Použijte třídu By: from selenium.webdriver.common.by import By, poté driver.find_element(By.ID, „email“).

Implicitní čekání dotazuje DOM po nastavenou dobu. Explicitní čekání (WebDriverWait) se pozastaví, dokud není splněna určitá podmínka. Nekombinujte je, abyste předešli nepředvídatelnému načasování.

Ne. PyDev in Eclipse je jedna z možností. Můžete také spustit Selenium Python skripty v PyCharm, VS Code, nebo z příkazového řádku.

Selenium Podpora WebDriveru Firefox, Chrome, Edge, Safari a Internet Explorer. Stejné Python skript je probíhá pomocí swapuping řidič.

Ano. Asistenti s umělou inteligencí, jako je ChatGPT, promění popis testu v jednoduchém jazyce v Selenium Python kód, navrhovat lokátory a převádět stará volání find_element_by_id na syntaxi By.

Ano. GitHub Copilot navrhuje stabilní lokátory, vysvětluje chyby NoSuchElementException a doporučuje explicitní čekání, což snižuje počet nespolehlivých testů na dynamických stránkách.

Shrňte tento příspěvek takto: