Selenium Python Tutorial con WebDriver (Esempio)

⚡ Riepilogo intelligente

Selenium con Python abbina la libreria di automazione WebDriver con Python sintassi concisa per testare le applicazioni web Firefox, Chrome e Internet Explorer. Questa procedura guidata configura PyDev in Eclipse, scrive script di accesso e spiega perché i team preferiscono Python ancora Java.

  • 🐍 Python Vantaggio: Less la sintassi verbosa rende Selenium script più facili da leggere e da gestire.
  • 🌐 Driver Web: Invia comandi standard a Firefox, Chrome e IE, indipendentemente dal design del browser.
  • 🧩 PyDev Setup: installare il PyDev plug-in Eclipse e impostare il Python interprete.
  • 📝 Script di accesso: Individua i campi tramite ID, invia le chiavi e invia automaticamente il modulo.
  • Affermazione del titolo: WebDriverWait plus assert verifica il titolo della pagina dopo l'accesso.
  • 🤖 Assistenza AI: Gli strumenti di IA generano localizzatori e Selenium Python script da semplici prompt.

Selenium Python Tutorial con WebDriver

Selenium con Python

Selenium supporta Python e quindi può essere utilizzato come Selenium WebDriver con Python per il test.

  • Python è facile rispetto ad altri linguaggi di programmazione, avendo una sintassi molto meno prolissa.
  • Migliori Python Le API ti consentono di connetterti al browser tramite Selenium.
  • Selenium invia la norma Python comandi per browser diversi, nonostante le variazioni nella progettazione dei browser stessi.

Puoi correre Selenium con Python script per Firefox, Chrome, IE, ecc. su diversi sistemi operativi.

Cosa è Python?

Python è un linguaggio di scripting orientato agli oggetti di alto livello. È progettato in modo facile da usare. Python utilizza semplici parole chiave inglesi, facili da interpretare. Ha meno complicazioni sintattiche di qualsiasi altro linguaggio di programmazione.

Vedi alcuni esempi nella tabella seguente.

Parola chiave Significato Impiego
Elif Altrimenti se Altrimenti se
altro Altro se: X; elif: Y; altro: J
con l’esclusione di Fai così se si verifica un'eccezione tranne ValueError, a: print a
exec Esegui stringa come Python exec 'stampa "ciao mondo!"'

Cosa è Selenium?

Selenium è uno strumento per testare la tua applicazione web. Puoi farlo in diversi modi, ad esempio:

  • Consentigli di toccare i pulsanti.
  • Inserisci i contenuti nei moduli.
  • Scorri il tuo sito per verificare se tutto è "OK" e così via.

Come installare e configurare PyDev in Eclipse

PyDev Europe è Python ambiente di sviluppo per Eclipse.

Passo 1) Vai su Eclipse Marketplace. Aiuto > Installa nuovo software.

Installa e configura PyDev in Eclipse

Il passo successivo è installare l'IDE "pydev" per Eclipse.

Passo 2) In questo passaggio:

  1. Cerca “http://pydev.org/updates” in Lavora con, e poi
  2. Seleziona tutti gli elementi elencati e fai clic su Avanti due volte.
  3. Accetta il Contratto di Licenza e fai clic su Fine.

Installa e configura PyDev in Eclipse

Passo 3) Potrebbe comparire un avviso di sicurezza. Fare clic su "Installa comunque".

Installa e configura PyDev in Eclipse

Passo 4) Imposta le preferenze in modo da poter utilizzare Python secondo le esigenze del progetto. Vai a Finestra > Preferenze > PyDev >Interprete> Python Interprete.

Installa e configura PyDev in Eclipse

Imposta l'impostazione predefinita Python Interprete, proprio come hai impostato il Java compilatore per l'esecuzione Java codice. Per modificare il nome dell'interprete, fare clic sul pulsante Sfoglia per python/pypy exe.

Installa e configura PyDev in Eclipse

Passo 5) In questo passaggio, fornire il "nome dell'interprete" e il percorso del file "exe". Python.

  1. Fai clic su "Sfoglia" e trova python.exe dove hai installato Python.
  2. Fare clic sul pulsante "OK".
  3. Seleziona tutte le cartelle e fai clic su OK.
  4. Fare clic su "Applica e chiudi".

Installa e configura PyDev in Eclipse

Passo 6) Crea un nuovo progetto in PythonIn questa fase:

  1. Fare clic destro PyDev Esplora pacchetti > Nuovo.
  2. Seleziona l'opzione altri.

Installa e configura PyDev in Eclipse

  1. Selezionare "PyDev > PyDev Progetto".
  2. Premi il pulsante 'Avanti'.

Installa e configura PyDev in Eclipse

  1. Dai un nome al tuo progetto.
  2. Fare clic su "Fine".

Installa e configura PyDev in Eclipse

Puoi vedere il nuovo Python (PyDev) viene creato il progetto.

Passo 7) Dopo aver creato il 'PyDev Project', ne creerai uno nuovo Python pacchetto.

  1. Fare clic con il tasto destro su Progetto > Nuovo > PyDev Pacchetto.
  2. Assegna un nome al pacchetto e fai clic su Fine.

Installa e configura PyDev in Eclipse

Installa e configura PyDev in Eclipse

Passo 8) Come si può vedere nello screenshot qui sotto, è stato creato un nuovo pacchetto.

Installa e configura PyDev in Eclipse

Quindi, crea un PyDev modulo. Il modulo contiene Python file di inizializzazione, le cui funzioni possono essere importate in un altro modulo, evitando così di riscrivere il programma.

Passo 9) Crea un nuovo PyDev modulo. Fare clic con il tasto destro sul pacchetto > Nuovo > PyDev modulo.

Installa e configura PyDev in Eclipse

Assegna un nome al modulo e fai clic su "Fine".

Installa e configura PyDev in Eclipse

Seleziona il modello vuoto e fai clic su "OK".

Installa e configura PyDev in Eclipse

Passo 10) Scrivi il tuo codice per Selenium con Python come mostrato di seguito.

Installa e configura PyDev in Eclipse

Come creare script di test in Selenium con Python

In questa Selenium WebDriver con Python ad esempio, abbiamo automatizzato la “pagina di accesso di Facebook” utilizzando il Firefox conducente.

Selenium con Python Esempio 1: Accedi a 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()

Istantanea dell' Code

Crea script di test in Selenium con Python

Spiegazione del codice

  • Code riga 1: Dal modulo Selenium, importa webdriver.
  • Code riga 2: Dal modulo Selenium, importa Keys.
  • Code riga 3: user_name è una variabile utilizzata per memorizzare il valore del nome utente.
  • Code riga 4: La variabile "password" verrà utilizzata per memorizzare il valore della password.
  • Code riga 5: Inizializza “Firefox” facendone un oggetto.
  • Code riga 6: Il metodo “driver.get” naviga alla pagina fornita da URLWebDriver attende che la pagina sia completamente caricata prima di restituire il controllo al tuo script.
  • Code riga 7: Individua l'elemento casella di testo in cui deve essere scritto l'indirizzo email.
  • Code riga 8: Invia i valori alla sezione e-mail.
  • Code riga 9: Lo stesso vale per la password.
  • Code riga 10: Invia i valori alla sezione password.
  • Code riga 11: element.send_keys(Keys.RETURN) preme Invio dopo l'inserimento dei valori.
  • Code riga 12: Chiudi.

Produzione: Vengono inseriti i valori del nome utente "guru99" e della password.

Crea script di test in Selenium con Python

La pagina Facebook effettuerà l'accesso con l'indirizzo email e la password. Pagina aperta (vedi immagine sotto).

Crea script di test in Selenium con Python

Selenium con Python Esempio 2: Accedi a Facebook e controlla il titolo

In questo esempio, apriremo una pagina di accesso, compileremo i campi obbligatori "nome utente" e "password" e controlleremo il titolo della pagina.

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"

Istantanea del codice

Crea script di test in Selenium con Python

Spiegazione del codice:

  • Code righe 1-2: Importa i pacchetti di Selenium.
  • Code riga 4: Inizializzare Firefox creando un oggetto.
  • Code riga 6: Ottieni la pagina di accesso (Facebook).
  • Code righe 8-10: Recupera i campi di input per nome utente e password e il pulsante di invio.
  • Code righe 11-12: Inserisci i dati nei campi nome utente e password.
  • Code riga 14: Fai clic sul pulsante "Invia".
  • Code riga 15: Crea un oggetto di attesa con un timeout di 5 secondi.
  • Code riga 16: Cattura il titolo dall'oggetto "browser".
  • Code riga 17: Verifica la stringa del titolo catturata con "Facebook".

Perché scegliere Python ancora Java in Selenium

Alcuni punti a favore Python ancora Java da usare con Selenium siamo:

  1. Java i programmi tendono a funzionare più lentamente rispetto a Python programmi.
  2. Java utilizza parentesi tradizionali per iniziare e terminare i blocchi, mentre Python utilizza la rientranza.
  3. Java impiega tipo staticoping mentre la lavorazione del prodotto finito avviene negli stabilimenti del nostro partner Python è tipizzato dinamicamente.
  4. Python è più semplice e compatto rispetto a Java.

DOMANDE FREQUENTI

Eseguire pip install selenium. Moderno Selenium viene spedito con Selenium Il gestore scarica automaticamente il driver del browser corrispondente, eliminando la necessità di configurare manualmente chromedriver.

WebDriver è il Selenium interfaccia che gestisce un browser reale, inviando comandi a Firefox, Chrome o Edge per controllare la navigazione, i clic e l'inserimento dei dati nei moduli.

Selenium 4 rimosso find_element_by_id. Utilizzare la classe By: from selenium.webdriver.common.by import By, then driver.find_element(By.ID, “email”).

L'attesa implicita interroga il DOM per un tempo prestabilito. L'attesa esplicita (WebDriverWait) mette in pausa il sistema finché non viene soddisfatta una condizione specifica. È consigliabile evitare di combinarle per prevenire tempistiche imprevedibili.

No. PyDev in Eclipse è un'opzione. Puoi anche correre Selenium Python sceneggiature in PyCharm, VS Codeoppure dalla riga di comando.

Selenium WebDriver supporta Firefox, Chrome, Edge, Safari e Internet Explorer. Lo stesso Python lo script viene eseguito su di essi tramite scambioping l'autista.

Sì. Gli assistenti IA come ChatGPT trasformano una descrizione del test in linguaggio semplice in Selenium Python codice, suggerisci localizzatori e converti le vecchie chiamate find_element_by_id nella sintassi By.

Sì. GitHub Copilot suggerisce localizzatori stabili, spiega gli errori NoSuchElementException e raccomanda attese esplicite, riducendo i test instabili sulle pagine dinamiche.

Riassumi questo post con: