Selenium è un potente strumento per controllare i browser Web tramite programmi ed eseguire l'automazione del browser. È funzionale per tutti i browser, funziona su tutti i principali sistemi operativi e i suoi script sono scritti in varie lingue, ad es Pitone , Giava , C# , ecc., lavoreremo con Python. Selenium Tutorial copre tutti gli argomenti come WebDriver, WebElement, Unit Test con selenio. Questo tutorial su Python Selenium copre il selenio dalle basi agli usi avanzati e professionali. 
Perché imparare il Selenium Python?
- Open Source e portatile – Selenium è un framework di test Web open source e portatile.
- Combinazione di strumento e DSL – Selenium è una combinazione di strumenti e DSL (Domain Specific Language) per effettuare vari tipi di test.
- Più facile da comprendere e implementare – I comandi del selenio sono classificati in termini di classi diverse che ne facilitano la comprensione e l'implementazione.
- Meno oneri e stress per i tester – Come accennato in precedenza, la quantità di tempo necessaria per eseguire test di scenari di test ripetuti su ogni nuova build è ridotta quasi a zero. Pertanto, l'onere del tester viene ridotto.
- Riduzione dei costi per i Clienti Business – L'azienda deve pagare ai tester il loro stipendio, che viene risparmiato utilizzando lo strumento di test di automazione. L'automazione non solo fa risparmiare tempo, ma apporta anche vantaggi economici all'azienda.
L'apprendimento di Selenium con Python apre molte possibilità per test di applicazioni web efficienti ed efficaci, in particolare se abbinato a piattaforme di test cloud popolari come LambdaTest.
LambdaTest è una piattaforma di orchestrazione ed esecuzione di test basata sull'intelligenza artificiale che consente a sviluppatori e tester di eseguire test Selenium Python su larga scala su un laboratorio di test remoto di oltre 3000 browser desktop e sistemi operativi reali. Con Selenium Python puoi scrivere robusti script di test per automatizzare il test delle applicazioni web, garantendone la funzionalità su diversi browser e piattaforme. Sviluppatori e tester possono persino eseguire test in parallelo su più combinazioni, aiutandoli a fornire build di qualità alla velocità della luce.
Nozioni di base sul selenio- Nozioni di base sul selenio
- Componenti del selenio
- Applicazioni e usi
- Caratteristiche
- Limitazioni
Nozioni di base su Python al selenio
- Introduzione e installazione di Selenium Python
- Navigazione dei collegamenti utilizzando il metodo get
- Interazione con la pagina Web
- Localizzazione di singoli elementi
- Individuazione di più elementi
- Strategie di localizzazione – Selenium Python
- Scrittura di test utilizzando Selenium Python
Strategie di localizzazione
ops in Java
- Individuazione di singoli elementi –
- find_element_by_id()
- trova_elemento_per_nome()
- find_element_by_xpath()
- find_element_by_link_text()
- find_element_by_partial_link_text()
- find_element_by_tag_name()
- find_element_by_class_name()
- find_element_by_css_selector()
- Individuazione di più elementi –
- trova_elementi_per_nome()
- find_elements_by_xpath()
- find_elements_by_link_text()
- find_element_by_partial_link_text()
- find_elements_by_tag_name()
- find_elements_by_class_name()
- find_elements_by_css_selector()
Aspetta
- Attese esplicite
- Attese implicite
la migliore macchina del mondo
- Nozioni di base sulle catene di azioni
- clic
- fai_clic_e_tieni premuto
- contesto_clic
- doppio click
- trascinare e rilasciare
- key_down
- key_up
- sposta_per_offset
- sposta_su_elemento
- sposta_su_elemento_con_offset
- pubblicazione
- reset_azioni
- send_keys
Avanzato in Selenium Python –
- Gestione delle eccezioni – Selenium Python
- Tasti speciali in Selenium Python
- Come gestire i messaggi di avviso in Selenium Python?
- Aggiunta ed eliminazione di cookie in Selenium Python
- Come spostarsi avanti e indietro nella Storia usando Selenium Python?
- Tasti speciali in Selenium Python
- Asserzione in Selenium WebDriver utilizzando TestNg
- Trucchi al selenio pitone
- Modello oggetto pagina (POM)
Esempi di progetti
- Whatsapp usando Python!
- Automazione del browser utilizzando il selenio
- Accesso a Facebook utilizzando Python
- Automatizzazione dei post di buon compleanno su Facebook utilizzando Selenium
- Come accedere alla finestra di accesso popup in selenium utilizzando Python
- Bombardiere SMS che utilizza il selenio
Selenio WebDriver
Selenium Webdriver è il genitore di tutti i metodi e le classi utilizzate in Selenium Python. È la forza trainante del Selenio che ci consente di eseguire varie operazioni su più elementi di una pagina web. Il driver ha vari metodi e attributi che è possibile utilizzare per automatizzare i test in Selenium Python. Per verificare come utilizzare il webdriver, visitare –
Elemento Web in Selenium Python
. Vari metodi che è possibile utilizzare in Selenium Python sono:
| Metodo | Descrizione |
|---|---|
| aggiungi_cookie | Aggiunge un cookie alla sessione corrente. |
| Indietro | Fa un passo indietro nella cronologia del browser. |
| vicino | Chiude la finestra corrente. |
| crea_elemento_web | Crea un elemento Web con l'element_id specificato. |
| elimina_tutti_i_cookie | Elimina tutti i cookie nell'ambito della sessione. |
| elimina_cookie | Elimina un singolo cookie con il nome indicato. |
| esegui_script_asincrono | Esegue in modo asincrono JavaScript nella finestra/frame corrente. |
| esegui_script | Esegue in modo sincrono JavaScript nella finestra/frame corrente. |
| inoltrare | Fa un passo avanti nella cronologia del browser. |
| finestra_a schermo intero | Richiama l'operazione 'a schermo intero' specifica del gestore delle finestre |
| ottieni_cookie | Ottieni un singolo cookie per nome. Restituisce il cookie se trovato, Nessuno in caso contrario. |
| get_cookies | Restituisce una serie di dizionari, corrispondenti ai cookie visibili nella sessione corrente. |
| get_log | Ottiene il log per un determinato tipo di log |
| get_screenshot_as_base64 | Ottiene lo screenshot della finestra corrente come stringa codificata base64 utile nelle immagini incorporate in HTML. |
| ottieni_screenshot_come_file | Salva uno screenshot della finestra corrente in un file immagine PNG. |
| get_screenshot_as_png | Ottiene lo screenshot della finestra corrente come dati binari. |
| ottieni_posizione_finestra | Ottiene la posizione x, y della finestra corrente. |
| get_window_rect | Ottiene le coordinate x, y della finestra nonché l'altezza e la larghezza della finestra corrente. |
| get_window_size | Ottiene la larghezza e l'altezza della finestra corrente. |
| implicitamente_aspetta | Imposta un timeout permanente per attendere implicitamente che venga trovato un elemento, |
| massimizza_finestra | Massimizza la finestra corrente utilizzata dal webdriver |
| minimizza_finestra | Invoca l'operazione di minimizzazione specifica del window manager |
| esentato | Esce dal driver e chiude tutte le finestre associate. |
| ricaricare | Aggiorna la pagina corrente. |
| set_page_load_timeout | Imposta il tempo di attesa per il completamento del caricamento di una pagina prima di generare un errore. |
| set_script_timeout | Imposta il tempo di attesa dello script durante una chiamata aexecute_async_script prima di generare un errore. |
| imposta_posizione_finestra | Imposta la posizione x, y della finestra corrente. (finestra.moveTo) |
| set_window_rect | Imposta le coordinate x, y della finestra nonché l'altezza e la larghezza della finestra corrente. |
| URL_corrente | Ottiene l'URL della pagina corrente. |
| current_window_handle | Restituisce l'handle della finestra corrente. |
| page_source | Ottiene l'origine della pagina corrente. |
| titolo | Restituisce il titolo della pagina corrente. |
Elemento Web selenio
Un elemento può essere un tag, una proprietà o qualsiasi altra cosa, è un'istanza di classe
selenium.webdriver.remote.webelement.WebElement
circuito sommatore completo
. Dopo aver trovato un elemento sullo schermo utilizzando selenium, potresti voler fare clic su di esso o trovare elementi secondari, ecc. Selenium fornisce metodi attorno a questo WebElement di Selenium. Per verificare come utilizzare l'oggetto elemento in selenio, visita –
. Di seguito vengono discussi vari metodi che è possibile utilizzare con un elemento in Selenium Python:
| Metodi degli elementi | Descrizione |
|---|---|
| è selezionato() | Il metodo is_selected viene utilizzato per verificare se l'elemento è selezionato o meno. Restituisce un valore booleano True o False. |
| È visualizzato() | Il metodo is_displayed viene utilizzato per verificare se l'elemento è visibile all'utente o meno. Restituisce un valore booleano True o False. |
| è abilitato() | Il metodo is_enabled viene utilizzato per verificare se l'elemento è abilitato o meno. Restituisce un valore booleano True o False. |
| get_proprietà() | Il metodo get_property viene utilizzato per ottenere le proprietà di un elemento, come ottenere la proprietà text_length del tag di ancoraggio. |
| get_attributo() | Il metodo get_attribute viene utilizzato per ottenere gli attributi di un elemento, come ottenere l'attributo href del tag di ancoraggio. |
| invia_chiavi() | Il metodo send_keys viene utilizzato per inviare testo a qualsiasi campo, come il campo di input di un modulo o anche per ancorare il paragrafo del tag, ecc. |
| clic() | Il metodo click viene utilizzato per fare clic su qualsiasi elemento, come un tag di ancoraggio, un collegamento, ecc. |
| chiaro() | Il metodo clear viene utilizzato per cancellare il testo di qualsiasi campo, come il campo di input di un modulo o anche per ancorare il paragrafo dei tag, ecc. |
| immagine dello schermo() | Il metodo screenshot viene utilizzato per salvare uno screenshot dell'elemento corrente in un file PNG. |
| invia() | Il metodo di invio viene utilizzato per inviare un modulo dopo aver inviato i dati a un modulo. |
| valore_di_css_proprietà() | Il metodo value_of_css_property viene utilizzato per ottenere il valore di una proprietà CSS per un elemento. |
| posizione | Il metodo location viene utilizzato per ottenere la posizione dell'elemento nella tela renderizzabile. |
| screenshot_as_png | Il metodo screenshot_as_png viene utilizzato per ottenere lo screenshot dell'elemento corrente come dati binari. |
| genitore | Il metodo parent viene utilizzato per ottenere un riferimento interno all'istanza WebDriver da cui è stato trovato questo elemento. |
| misurare | Il metodo size viene utilizzato per ottenere la dimensione dell'elemento corrente. |
| nome_tag | Il metodo tag_name viene utilizzato per ottenere il nome del tag a cui ti riferisci. |
| testo | il metodo text viene utilizzato per ottenere il testo dell'elemento corrente. |
| rect | Il metodo rect viene utilizzato per ottenere un dizionario con la dimensione e la posizione dell'elemento. |
| screenshot_as_base64 | Il metodo screenshot_as_base64 viene utilizzato per ottenere lo screenshot dell'elemento corrente come stringa codificata base64. |