logo

Selenio WebDriver

Selenium WebDriver è il componente più importante della Suite Selenium Tool. L'ultima versione 'Selenium 2.0' è integrata con l'API WebDriver che fornisce un'interfaccia di programmazione più semplice e concisa.

mvc con java

L'immagine seguente ti fornirà una buona comprensione dei componenti Selenium e degli strumenti di automazione dei test.


Selenio WebDriver

Selenium WebDriver è stato introdotto per la prima volta come parte di Selenium v2.0. La versione iniziale di Selenium, ovvero Selenium v1, consisteva solo di IDE, RC e Grid. Tuttavia, con il rilascio di Selenium v3, RC è stato deprecato e spostato nel pacchetto legacy.

In WebDriver, gli script di test possono essere sviluppati utilizzando uno qualsiasi dei linguaggi di programmazione supportati e possono essere eseguiti direttamente nella maggior parte dei browser Web moderni. I linguaggi supportati da WebDriver includono C#, Java, Perl, PHP, Python e Ruby.

Prima di apprendere i concetti di Selenium WebDriver, dovresti essere esperto di uno qualsiasi dei linguaggi di programmazione supportati. Attualmente, il driver Selenium Web è più popolare con Java e C#. Per questo tutorial, utilizzeremo Selenium con Java. È possibile fare riferimento ai collegamenti indicati di seguito per apprendere i concetti di base e avanzati di Java e C#:

Esercitazione su Java: https://www.javatpoint.com/java-tutorial

Esercitazione su C#: https://www.javatpoint.com/c-sharp-tutorial

Selenium WebDriver funziona molto più velocemente rispetto a Selenium RC perché effettua chiamate dirette ai browser web. RC invece necessita di un server RC per interagire con il browser.

WebDriver ha un'implementazione integrata del driver Firefox (Gecko Driver). Per gli altri browser, è necessario collegare i driver specifici del browser per comunicare ed eseguire il test. I WebDriver più comunemente utilizzati includono:

  • Driver di Google Chrome
  • Driver di Internet Explorer
  • Driver dell'Opera
  • DriverSafari
  • HTML Unit Driver (uno speciale driver headless)

Selenium WebDriver - Architettura

L'API Selenium WebDriver fornisce funzionalità di comunicazione tra lingue e browser.

L'immagine seguente mostra la rappresentazione architetturale di Selenium WebDriver.


Architettura del selenio WebDriver

Esistono quattro componenti di base dell'architettura WebDriver:

  • Legami del linguaggio del selenio
  • Protocollo JSON Wire
  • Driver del browser
  • Browser reali

Associazioni linguaggio Selenium/Librerie client Selenium

Gli sviluppatori di Selenium hanno creato collegamenti linguistici/librerie client Selenium per supportare più lingue. Ad esempio, se desideri utilizzare il driver del browser in Java, utilizza i collegamenti Java. Tutte le associazioni linguistiche supportate possono essere scaricate dal sito ufficiale (https://www.seleniumhq.org/download/#client-drivers) di selenio.

Protocollo JSON Wire

JSON (JavaScript Object Notation) è uno standard aperto per lo scambio di dati sul web. Supporta strutture dati come oggetti e array. Pertanto, è facile scrivere e leggere dati da JSON. Per ulteriori informazioni su JSON, visitare https://www.javatpoint.com/json-tutorial

JSON Wire Protocol fornisce un meccanismo di trasporto per trasferire dati tra un server e un client. JSON Wire Protocol funge da standard di settore per vari servizi Web REST. Per ulteriori informazioni sui servizi Web, visitare https://www.javatpoint.com/web-services-tutorial

Driver del browser

Selenium utilizza driver specifici per ciascun browser al fine di stabilire una connessione sicura con il browser senza rivelare la logica interna della funzionalità del browser. Il driver del browser è specifico anche per il linguaggio utilizzato per l'automazione come Java, C#, ecc.

Quando eseguiamo uno script di test utilizzando WebDriver, le seguenti operazioni vengono eseguite internamente.

  • La richiesta HTTP viene generata e inviata al driver del browser per ogni comando Selenium.
  • Il driver riceve la richiesta HTTP tramite il server HTTP.
  • Il server HTTP decide tutti i passaggi per eseguire le istruzioni eseguite sul browser.
  • Lo stato di esecuzione viene inviato al server HTTP che viene successivamente inviato allo script di automazione.

Browser

Browser supportati da Selenium WebDriver:

  • Internet Explorer
  • Mozilla Firefox
  • Google Chrome
  • Safari

Selenium WebDriver - Caratteristiche

Alcune delle caratteristiche più importanti di Selenium WebDriver sono:

    Supporto di più browser: Selenium WebDriver supporta una vasta gamma di browser Web come Firefox, Chrome, Internet Explorer, Opera e molti altri. Supporta anche alcuni browser non convenzionali o rari come HTMLUnit.

Funzionalità del selenio WebDriver
    Supporto per più lingue: WebDriver supporta anche la maggior parte dei linguaggi di programmazione comunemente utilizzati come Java, C#, JavaScript, PHP, Ruby, Pearl e Python. Pertanto, l'utente può scegliere uno qualsiasi dei linguaggi di programmazione supportati in base alle proprie competenze e iniziare a creare gli script di test.Velocità: WebDriver funziona più velocemente rispetto ad altri strumenti di Selenium Suite. A differenza di RC, non necessita di alcun server intermedio per comunicare con il browser; piuttosto lo strumento comunica direttamente con il browser.

Funzionalità del selenio WebDriver
    Comandi semplici: La maggior parte dei comandi utilizzati in Selenium WebDriver sono facili da implementare. Ad esempio, per avviare un browser in WebDriver vengono utilizzati i seguenti comandi:
    Driver WebDriver = nuovo FirefoxDriver(); (Browser Firefox)
    Driver WebDriver = nuovo ChromeDriver(); (Browser Chrome)
    Driver WebDriver = nuovo InternetExplorerDriver(); (Browser Internet Explorer)WebDriver: metodi e classi: WebDriver fornisce molteplici soluzioni per far fronte ad alcune potenziali sfide nei test di automazione.
    WebDriver consente inoltre ai tester di gestire tipi complessi di elementi Web come caselle di controllo, menu a discesa e avvisi tramite cercatori dinamici.

Funzionalità del selenio WebDriver

Indice tutorial Selenium WebDriver


Tutorial per Selenium WebDriver

  • Strategie di localizzazione
  • Individuazione delle strategie per ID
  • Individuazione delle strategie per nome
  • Individuazione delle strategie in base al nome della classe
  • Individuazione delle strategie in base al nome del tag
  • Individuazione delle strategie tramite il testo del collegamento
  • Individuazione delle strategie in base al testo del collegamento parziale
  • Individuazione delle strategie tramite CSS
  • Individuazione delle strategie tramite XPath
  • Gestione dei menu a discesa
  • WebDriver: trascina e rilascia
  • Avvisi di gestione del WebDriver
  • Scorrimento di una pagina Web
  • WebDriver - Comandi del browser
  • WebDriver - Comandi di navigazione
  • WebDriver - Comandi WebElement
  • Gestione dei pulsanti radio
  • Casella di controllo Gestione
  • Affermazioni sul selenio
  • Griglia di selenio