Selenium è un feroce toolkit per gli sviluppatori

Aggiornata:
4 minuti di lettura
Selenium è un feroce toolkit per gli sviluppatori
Immagine: selenium.dev
Condividere

Gli sviluppatori trascorrono innumerevoli ore a testare la funzionalità di un’applicazione Web sia in locale che fuori sede.

Prima di Selenium, era tutto fatto letteralmente a mano: decine di persone hanno testato centinaia di script in tutti i browser esistenti, individuando i problemi e cercando di determinare le cause del loro verificarsi.

Cos’è il Selenium

Selenium è un insieme di strumenti di test e automazione software open source che è diventato il leader de facto.

Lavorando con la maggior parte dei linguaggi di programmazione supportati da tutti i principali sistemi operativi e browser, Selenium è attualmente utilizzato da aziende come Netflix, Google, HubSpot, Fitbit e altre. L’intera Suite fornisce una gamma di soluzioni per vari compiti ed esigenze di test.

Infrastruttura della tuta al Selenium

Driver Web

Nella maggior parte dei casi, quando le persone parlano di Selenium, intendono Selenium WebDriver. La maggior parte dello sviluppo del prodotto si concentra su questo elemento.
L’automazione dei test in WebDriver è spesso paragonata alla guida di un taxi. Ci sono tre componenti coinvolti nella guida e nei test dei taxi: cliente (tecnico di test) – auto (browser) – tassista (WebDriver).

DevOps – Sviluppo e operazioni
DevOps – Sviluppo e operazioni
4 minuti di lettura
Ratmir Belov
Journalist-writer

Secondo questa analogia, il programmatore prima dice al conducente come interagire con gli elementi del browser. Quindi WebDriver fornisce al browser (macchina) comandi che suonano in questo modo: quando il pulsante è attivo, fai clic sul pulsante. Successivamente, il browser fornisce al driver informazioni sui valori e gli stati degli elementi Web, che vengono successivamente inviati allo script. In poche parole, lo strumento Selenium WebDriver viene utilizzato per raccogliere informazioni e assicurarsi che l’applicazione funzioni correttamente, ovvero che il conducente sappia guidare e sappia dove andare.

IDE selenio

Questa è un’estensione per Firefox. Non è progettato per lo sviluppo, è facile da imparare ed è perfetto per le attività di prototipazione.

Lavorare in Selenium IDE non richiede competenze di programmazione, poiché il plugin registra sostanzialmente le azioni dell’ingegnere nel browser e le ripete. I programmatori non lo considerano un prodotto indipendente e completo, ma è abbastanza per lavorare con semplici script.

Griglia al selenio

Consente di eseguire test paralleli su più macchine e browser contemporaneamente. La funzione principale di questo strumento è di risparmiare tempo. Se è necessario eseguire, ad esempio, 100 test per configurare quattro macchine virtuali o fisiche, viene utilizzato Selenium Grid.

Selenium
Immagine: linuxhint.com

Dato che gli script del browser sono generalmente lenti, l’utilizzo di tecniche di prestazioni come il test parallelo può aiutare con questo problema. Può anche essere utilizzato per testare la stessa applicazione in diversi browser in parallelo, quando Firefox è in esecuzione su un computer, Chrome è in esecuzione su un altro e così via. È possibile creare diverse configurazioni combinando diverse versioni di browser e sistemi operativi. Inutile dire che, se utilizzato in grandi ambienti di produzione, Grid fa risparmiare quattro volte il tempo.

Pro

Selenium non è l’unico strumento di automazione dei test sul mercato, ma è l’unico strumento gratuito in grado di competere con i prodotti a pagamento. Katalon Studio è una valida alternativa, ma non fornisce tante lingue, non funziona su Linux e semplicemente non ha una base di fan.

Progettazione guidata dal dominio – Programmazione DDD
Progettazione guidata dal dominio – Programmazione DDD
5 minuti di lettura
Ratmir Belov
Journalist-writer

Non sorprende che anche le aziende più grandi non abbiano fretta di spostarsi su siti a pagamento e regalare migliaia di dollari per ciò che Selenium fa gratuitamente. Il numero di aziende che lavorano con Selenium supera le 55mila. La sua quota di mercato nei test e nell’automazione è quasi del 30%.

Supporto per lingue, piattaforme, browser:

  • Java
  • C#
  • PHP
  • Rubino
  • Perl
  • Pitone
  • JavaScript
  • Obiettivo-C
  • Haskell
  • R
  • Finestre
  • Linux
  • Mac
  • Android
  • iOS
  • Google Chrome
  • Internet Explorer
  • Firefox
  • Safari
  • Opera
  • Microsoft Edge
  • DriverHtmlUnit

Contro

Forse l’unico svantaggio significativo è che il selenio può essere utilizzato solo nelle applicazioni web. Ma questa è più una limitazione, non uno svantaggio, dal momento che WinAppDriver può essere integrato in Selenium per testare le applicazioni desktop.

Un po’ di storia in conclusione

Nel 2004, Jason Huggins ha creato un framework JavaScript progettato per liberare il suo creatore da test manuali ripetitivi. Il prodotto, prevedibilmente chiamato inizialmente JavaScriptTestRunner, poteva eseguire test direttamente nel browser, gestire le interazioni delle pagine e rieseguirle senza input manuale. Questo strumento JavaScript è diventato popolare dopo che Huggins, realizzando il suo pieno potenziale, lo ha reso open source e lo ha ribattezzato Selenium Remote Control. La parte innovativa era che fino ad allora nessun altro strumento permetteva ai tester di comunicare con il browser nel loro linguaggio di programmazione preferito.

Internet è la più grande invenzione dell’umanità
Internet è la più grande invenzione dell’umanità
9 minuti di lettura
2.6
(5)
Editorial team
Editorial team of Pakhotin.org

Tuttavia, è diventato presto evidente che i browser stavano applicando restrizioni di sicurezza a JavaScript, rendendo impossibile l’utilizzo di tutta la potenza dello strumento. A quel tempo, Google era un avido utente di Selenium e i suoi ingegneri hanno fatto del loro meglio per aggirare le restrizioni. Uno di loro, Simon Stewart, iniziò a lavorare su un prodotto che interagisse direttamente con i browser e lo chiamò WebDriver.

Quindi, oltre un decennio fa, Selenium ha unito le forze con WebDriver e ha cambiato per sempre il modo in cui il software viene testato. Sito ufficiale https://www.selenium.dev
Voto articolo
0,0
0 valutazioni
Valuta questo articolo
Editorial team
Per favore scrivi la tua opinione su questo argomento:
avatar
  Notifiche sui commenti  
Notifica di
Contenuto Vota Commenti
Condividere

Potrebbe piacerti anche

CSS: regole, selettori, proprietà
5 minuti di lettura
Ratmir Belov
Journalist-writer
Malware: come riconoscersi e proteggersi?
7 minuti di lettura
Ratmir Belov
Journalist-writer