Panoramica sull'architettura del selenio

Attualmente, il selenio è uno degli strumenti più popolari per l'automazione sul mercato. È uno strumento molto potente ed è ampiamente utilizzato. Uno dei motivi della sua popolarità è che è gratuito, cioè è una suite di test open source. La sua popolarità non è solo il risultato di questo, ma molte altre ragioni. È uno strumento di automazione per applicazioni web e supporta tutti i diversi browser come Internet Explorer, Chrome, Safari, Mozilla Firefox, Opera, ecc. Estende il supporto a piattaforme diverse insieme a vari linguaggi di programmazione come C #, Java, Perl, PHP, Python, Ruby. Il selenio è in qualche modo simile allo strumento UFT (HP Quick Test Pro o QTP). La differenza principale è che Selenium è dedicato esclusivamente all'automazione di applicazioni basate sul Web. Se si utilizza il selenio per i test, è noto come test del selenio.

Ricordare che Selenium è una suite UI (User Interface) open source per i test di automazione. Ha molti software che soddisfano in modo indipendente i requisiti di un tester di automazione in un'organizzazione. Lo strumento è stato sviluppato nelle opere pensate da Jason Huggins nel 2004 come strumento interno. Selenium supporta diverse piattaforme come Windows, Linux, Solaris e Macintosh. Supporta anche il sistema operativo (sistema operativo) per applicazioni mobili come Windows Mobile e Android Mobile, iOS. Tutti i test funzionali possono essere automatizzati ed eseguiti facilmente usando il selenio. Al fine di ottenere test continui, può anche essere integrato con altri strumenti di test per l'automazione come Maven, Docker, Jenkins, ecc. Poiché il selenio non è in grado di generare report di test da solo, dovrebbe essere integrato con strumenti come JUnit o TestNG in per gestire i casi di test e generare report che siano ben descrittivi e configurabili secondo i nostri requisiti.

Selenium Architecture

Le quattro principali architetture di selenio sono elencate di seguito -

  1. Selenio IDE
  2. Selenio RC
  3. Selenium Webdriver
  4. Selenium Grid

1) Selenium IDE o Integrated Development Environment può essere implementato come estensione di Firefox. Non è necessaria alcuna logica di programmazione per scrivere script di test in IDE in quanto consente semplicemente di registrare gli eventi che si verificano a seguito delle interazioni con il browser insieme alle funzionalità di debug di riproduzione, modifica e test. Tutta la registrazione e la riproduzione possono essere eseguite in un ambiente reale. Gli script generati possono essere modificati in seguito a mano. Si ritiene che fornisca un ambiente ideale per creare script di test del selenio indipendentemente dal modo preferito di test. È vero che non hai bisogno di alcuna conoscenza del linguaggio di programmazione per utilizzare Selenium IDE ma una conoscenza di base di JavaScript sarà utile durante l'utilizzo di comandi Selenese come runScript, ecc. Una delle limitazioni di Selenium IDE è che essendo un plugin Firefox supporta solo un browser, ad esempio Mozilla Firefox.

2) Selenium Remote Control è uno strumento di test di automazione che consente di creare script di test per un'applicazione Web in qualsiasi linguaggio di programmazione utilizzando qualsiasi browser con JavaScript abilitato. Fondamentalmente, Selenium RC ha due componenti principali: un server e una libreria client.

Il ruolo di un server qui è l'avvio e l'uccisione del browser, la ricezione e la verifica delle richieste HTTP effettuate tra il browser e l'applicazione in prova, l'interpretazione e l'esecuzione dei comandi Selenese passati dal programma di test e anche la funzione di proxy HTTP. Le librerie client, tuttavia, fungono da interfaccia tra il server Selenium RC e i diversi linguaggi di programmazione utilizzati.

La metodologia dell'architettura Client-Server di RC, con Selenium RC tra Automation Suite e AUT (Application Under Test), rallenta l'esecuzione degli script. Questo è gestito da Selenium Webdriver in quanto comunica direttamente con AUT e sfrutta la naturale compatibilità del browser con l'automazione senza la necessità di alcun server.

3) Selenium WebDriver è il componente più popolare e importante di Selenium. È uno degli strumenti di automazione più popolari su cui attualmente fanno affidamento diversi ingegneri dell'automazione. Lo strumento è uno "strumento Open Source", cioè è disponibile gratuitamente.

WebDriver è una versione migliorata di Selenium RC che estende il suo supporto a diversi browser e piattaforme, a differenza dell'IDE Selenium. L'esecuzione degli script di test non richiede l'avvio di alcun server Selenium, diversamente da Selenium RC. Selenium Webdriver è fondamentalmente un'API dello strumento di automazione dei test basata sul Web che è facile da capire e da usare. Supporta anche il test di pagine Web dinamiche. Selenium Webdriver aiuta a creare e mantenere gli script di test in un modo molto semplice in quanto non è collegato a nessun framework o strumento di test. Ciò semplifica l'integrazione con qualsiasi strumento open source come Junit, TestNG, ecc. Secondo le nostre conoscenze, requisiti e utilizzo.

4) Selenium Grid è uno dei componenti di Selenium Suite che supporta l'esecuzione di più script di test su vari browser, sistemi operativi o macchine. Dopo aver specificato il sistema operativo desiderato insieme al browser e alla versione del browser, la griglia del selenio può essere facilmente connessa con il selenio remoto. Questi valori possono essere specificati solo in base alle funzionalità del Selenium Remote utilizzato.

Hub e nodi sono i suoi due componenti principali. Per poter utilizzare lo strumento Selenium Grid, il primo passo da compiere è la creazione di un hub. Dopo aver creato un hub, è possibile collegare diversi nodi diversi a questo hub. Gli script di test vengono eseguiti nel nodo. La funzione dell'hub, tuttavia, è quella di assicurarsi che il test finisca correttamente sulle specifiche fornite come i dettagli della macchina, del sistema operativo e del browser specificati nel test.

Conclusione

Per concludere, Selenium è fondamentalmente una suite di strumenti, ovvero IDE, un'estensione di Firefox che consente funzionalità di registrazione e riproduzione. La funzione di registrazione / riproduzione è limitante e disponibile solo per Firefox, quindi il secondo strumento è RC con Webdriver (terzo strumento) come estensione che fornisce API in diverse lingue e compatibilità del browser. Alla fine, la Griglia è responsabile per rendere possibile l'esecuzione parallela di script in diversi browser e macchine.

Articoli consigliati

Questa è stata una guida all'architettura del selenio. Qui discutiamo l'introduzione e le prime 4 architetture di selenio. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -

  1. Carriera nel selenio
  2. Ciclo di vita dei difetti nei test del software
  3. Come installare Selenium
  4. Selenium Interview Questions

Categoria: