Selenium Python Tutorial met WebDriver-voorbeeld
Selenium met Python
Selenium ondersteunt Python en kan dus worden gebruikt als Selenium WebDriver met Python om uit te proberen.
- Python is gemakkelijk vergeleken met andere programmeertalen, omdat het veel minder uitgebreid is.
- De Python Met API's kunt u verbinding maken met de browser via Selenium.
- Selenium stuurt de standaard Python opdrachten naar verschillende browsers, ondanks variaties in het ontwerp van hun browser.
Je kan lopen Selenium met Python scripts voor Firefox, Chrome, IE, etc. op verschillende Operasystemen.
Wat is Python?
Python is een objectgeoriënteerde scripttaal op hoog niveau. Het is op een gebruiksvriendelijke manier ontworpen. Python gebruikt eenvoudige Engelse trefwoorden, die gemakkelijk te interpreteren zijn. Het heeft minder syntaxiscomplicaties dan enig ander programmeertalen.
Zie enkele voorbeelden in de onderstaande tabel.
Keyword | Betekenis | Gebruik |
---|---|---|
elif | Anders als | Anders als |
anders | Anders | als: X; elif: Y; anders: J |
behalve | doe dit. Als er een uitzondering optreedt, | behalve ValueError, a: print a |
exec | Tekenreeks uitvoeren als Python | exec 'print “Hallo wereld!”' |
Wat is Selenium?
Selenium is een tool om uw webapplicatie te testen. Dit kun je bijvoorbeeld op verschillende manieren doen
- Laat het op knoppen tikken
- Voer inhoud in structuren in
- Skim uw site om te controleren of alles “OK” is, enzovoort.
Hoe te installeren en configureren PyDev in Eclipse
PyDev is Python ontwikkelomgeving voor Eclipse.
Stap 1) Moet Eclipse Marktplaats. Help > Nieuwe software installeren
De volgende stap is het installeren van “pydev IDE” voor Eclipse.
Stap 2) In deze stap,
- Zoek naar “http://pydev.org/updates” in Werken met en dan
- Selecteer alle vermelde items en klik tweemaal op Volgende
- Accepteer de licentieovereenkomst en klik op Voltooien.
Stap 3) Het kan zijn dat u een beveiligingswaarschuwing tegenkomt. Klik op “Toch installeren”.
Stap 4) Nu, in deze stap stelt u voorkeuren in. Met behulp van de voorkeursoptie kunt u gebruik maken van Python volgens de projectbehoefte.
Ga naar Venster > Voorkeuren > PyDev > Tolk > Python Tolk.
Laten we de standaard instellen Python Interpreter. Het is net alsof je de Java-compiler moet instellen om een Java code. Om de interpreternaam te wijzigen, klikt u op de knop Bladeren naar python/pypy exe.
Stap 5) Geef in deze stap de “interpreternaam” en het “exe” bestandspad van Python.
- Klik op 'Bladeren' en zoek python.exe waar je het hebt geïnstalleerd Python.
- Klik op de knop 'OK'.
- Selecteer alle mappen en klik op OK
- Klik op “Toepassen en sluiten”.
Stap 6) Maak een nieuw project aan Python. In deze stap,
- klik met de rechtermuisknop PyDev Pakketverkenner > Nieuw.
- Selecteer optie anderen.
- Selecteer "PyDev > PyDev Project”.
- Druk op de knop 'Volgende'.
- Geef uw project een naam
- Klik op "Finish".
Je kunt het nieuwe zien Python (PyDev)-project is gemaakt.
Stap 7) In deze stap,
Na het maken van ‘PyDev Project', maakt u een nieuw Python pakket.
- Klik met de rechtermuisknop op Project > Nieuw > PyDev Pakket.
- Geef uw pakket een naam en klik op Voltooien.
Stap 8) Als u onderstaande schermafbeelding ziet, is er een nieuw pakket gemaakt.
Nadat u een nieuw pakket hebt gemaakt, is de volgende stap het makenPyDev Module. De module bevat er enkele Python bestanden voor initialisatie. Deze bestanden of functies uit de module kunnen in een andere module worden geïmporteerd. Het is dus niet nodig om het programma opnieuw te schrijven.
Stap 9) Maak een nieuw PyDev module. Klik met de rechtermuisknop op pakket > Nieuw > PyDev module.
Geef uw module een naam en klik op “Voltooien”.
Selecteer Lege sjabloon en klik op "OK".
Stap 10) Schrijf uw code voor Selenium met Python zoals hieronder
Testscripts maken in Selenium met Python
In deze Selenium WebDriver met Python We hebben bijvoorbeeld automatisering uitgevoerd voor de ‘Facebook-inlogpagina’ met behulp van de Firefox bestuurder.
Selenium met Python Voorbeeld 1: Log in op 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()
Momentopname van de code
Verklaring van de code
- Coderegel 1: Van selenium module import webdriver
- Coderegel 2: Van selenium module importeer sleutels
- Coderegel 3: Gebruiker is een variabele die we zullen gebruiken om de waarden van de gebruikersnaam op te slaan.
- Coderegel 4: Variabele “wachtwoord” wordt gebruikt om de waarden van het wachtwoord op te slaan.
- Coderegel 5: In deze regel initialiseren we "FireFoxDoor er een object van te maken.
- Coderegel 6: De “driver.get-methode” navigeert naar een pagina die door de URL wordt opgegeven. WebDriver wacht totdat de pagina volledig is geladen (dat wil zeggen dat de 'onload'-gelegenheid is losgelaten) voordat u de controle over uw test of script teruggeeft.
- Coderegel 7: In deze regel vinden we het element van het tekstvak waar het "e-mailadres" moet worden geschreven.
- Coderegel 8: Nu sturen we de waarden naar het e-mailgedeelte
- Coderegel 9: Hetzelfde voor het wachtwoord
- Coderegel 10: waarden verzenden naar de wachtwoordsectie
- Coderegel 11: element.send_keys(Keys.RETURN) wordt gebruikt om op Enter te drukken nadat de waarden zijn ingevoegd
- Coderegel 12: Dichtbij
OUTPUT
De waarden van de gebruikersnaam “guru99” en het ingevoerde wachtwoord.
De Facebookpagina logt in met e-mailadres en wachtwoord. Pagina geopend (zie afbeelding hieronder)
Selenium met Python VOORBEELD 2: Log in op Facebook en controleer de titel
In dit voorbeeld
- We openen een inlogpagina.
- Vul het vereiste veld “gebruikersnaam” en “wachtwoord” in.
- Controleer de paginatitel
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"
Momentopname van de code
Uitleg van de code:
- Coderegel 1-2: Selenium-pakketten importeren
- Coderegel 4: initialiseren Firefox door een object te maken
- Coderegel 6: Krijg een inlogpagina (Facebook)
- Coderegel 8-10: Haal de gebruikersnaam en wachtwoordinvoervelden op en klik op Verzenden.
- Coderegel 11-12: Voer gegevens in de invoervelden voor gebruikersnaam en wachtwoord in
- Coderegel 14: Klik op de knop "Verzenden"
- Coderegel 15: Maak een wachtobject met een time-out van 5 sec.
- Coderegel 16: De titel vastleggen van het “browser”-object.
- Coderegel 17: De vastgelegde titelreeks testen met 'Facebook'
Waarom kiezen Python over Java in Selenium
Weinig punten die gunstig zijn Python over Java te gebruiken met Selenium is,
- Java programma's hebben de neiging langzamer te werken in vergelijking met Python 's.
- Java gebruikt traditionele accolades om blokken te starten en te beëindigen, terwijl Python maakt gebruik van inspringen.
- Java maakt gebruik van statisch typen, terwijl Python wordt dynamisch getypt.
- Python is eenvoudiger en compacter vergeleken met Java.
Samenvatting
- Selenium is een open-source webgebaseerd programma automatiseringstool.
- Python taal wordt gebruikt Selenium om uit te proberen. Het is veel minder uitgebreid en gemakkelijk te gebruiken dan welke andere programmeertaal dan ook
- De Python Met API's kunt u verbinding maken met de browser via Selenium
- Selenium kan de standaard verzenden Python opdrachten naar verschillende browsers, ondanks variaties in het ontwerp van hun browser.