Burattinaio vs selenio

Burattinaio vs selenio
Oggi quando si tratta di test web automatizzati, burattinaio e selenio sono i due nomi che si presentano. Uno dei motivi principali per cui sono ben noti è la loro capacità di eseguire browser senza testa. Pertanto, prima di procedere con l'articolo, diamo una rapida occhiata a quali sono i browser senza testa e i loro vantaggi.

In termini di base, i browser senza testa sono browser che possono essere utilizzati per testare l'usabilità delle pagine Web ed eseguire le interazioni del browser proprio come faresti con il browser normale. L'unica differenza qui è che non esiste un'interfaccia utente grafica (GUI) e di solito vengono eseguite dal terminale.

Browser senza testa:

  • aiutare a ridurre notevolmente l'utilizzo delle risorse
  • Sono più veloci
  • Sono ideali per scopi di raschiatura web
  • Possono essere utilizzati per monitorare le prestazioni delle applicazioni di rete

Ora che abbiamo conosciuto un fattore importante per entrambi gli strumenti, possiamo procedere.

Burattinaio

Puppeteer è una libreria di nodi di Google che fornisce un'API semplice per controllare Chrome senza testa. Attraverso il burattinaio, compiti comuni come la digitazione degli input, il clic sui pulsanti, il test dell'usabilità delle pagine Web e persino il raschiatura web può essere eseguita facilmente.

Il burattinaio è ufficiale del team di Chrome e utilizza il protocollo di debug remoto Chrome, proprio come troveremmo con Chrome DevTools. Questa libreria supporta la moderna sintassi JavaScript disponibile in Google Chrome.

Impostare

L'installazione e l'inizio con il burattinaio è molto facile. Poiché il burattinaio è una libreria di nodi, può essere installato utilizzando il npm attrezzo.

L'installazione può essere eseguita con il comando seguente:

npm i burattinaio

L'esecuzione del comando sopra installa il burattino. Si prevede che scarichi anche una versione recente di Chromium che funzionerebbe con l'API.

La dimensione del cromo è varia in base al sistema operativo:

  • ~ 170 MB per Mac
  • ~ 282 MB per Linux
  • ~ 280 MB per Windows

Dopo l'installazione di burattinaio, puoi scoprire ulteriori informazioni su come iniziare, puoi anche controllare altri esempi di codice.

Caratteristiche

Mentre la capacità di Puppeteer di lanciare un browser senza testa è una caratteristica che lo ha guadagnato un po 'di fama, non è l'unica caratteristica che lo rende fantastico. Puppeteer ha anche un paio di altre funzionalità che lo rendono utile, diamo una rapida occhiata ad alcune di esse.

Facile automazione:

Mentre ci sono altri strumenti che possono essere utilizzati per l'automazione del web, il burattina. Ciò è dovuto al fatto che funziona bene per un solo browser, che è il browser Chrome senza testa, quindi svolge attività di automazione web nel modo più efficiente possibile. Il burattinaio funziona anche bene con popolari librerie di test unitari come moka e jasmine.

Test dello screenshot:

Questa è una caratteristica vitale per qualsiasi attività automatizzata di test web. Gli screenshot sono importanti e aiutano a tenere traccia del risultato delle interazioni con gli elementi su una pagina web. Libraries come il burattinaio-screenshot-tester esistono anche in burattinaio che fornisce la capacità di confrontare gli screenshot generati durante il test. Ai lato che genera screenshot di test, i PDF possono anche essere generati da pagine Web testate in burattinaio.

Test delle prestazioni:

Chrome fornisce DevTools che consentono la registrazione della sequenza temporale delle prestazioni delle pagine Web e anche il burattinaio ne approfitta. Con il burattinaio, le tracce della sequenza temporale di siti Web possono essere catturate per esaminare i problemi di prestazione. A causa del controllo API di alto livello della cucciolo su Chrome Developers Tools Protocol, offre agli utenti la possibilità di controllare i lavoratori dei servizi e testare la memorizzazione nella cache dei siti Web.

Web rashing:

Un discorso sulle funzionalità non verrebbe completato senza riconoscere la capacità del burattinaio di essere utilizzato per scopi di raschiatura web. Imparare a usare il burattinaio come raschietto web è abbastanza facile, dai un'occhiata alla documentazione API.

Professionisti

  1. Funziona bene per i test visivi.
  2. Ottimo per i test end -to -end.
  3. Veloce rispetto al selenio.
  4. Può prendere screenshot delle pagine Web.
  5. Più controllo sui test tramite Chrome.
  6. Può testare la modalità offline.

Contro

  1. Supporta solo JavaScript (nodo)
  2. Supporta solo Chrome

Selenio

Selenio è un potente framework di test web, che ha la capacità di automatizzare le applicazioni Web per scopi di test. Selenio è anche noto per la sua capacità di automatizzare le attività di amministrazione basate sul web.

Il selenio è disponibile in due parti; Il webdriver Selenium per la creazione di potenti suite di automazione basate su browser e test e l'IDE selenio per la creazione di script di riproduzione di bug rapidi.

Non dimenticare che il selenio supporta anche i browser senza testa come visto con il burattinaio.

Impostare

A differenza di un burattinaio, la creazione di selenio non è semplice. Selenio supporta molte lingue e browser diversi, pertanto le possibili condizioni devono essere curate.

Di seguito sono elencati i collegamenti a tutorial ufficiali su come impostare i binding di selenio per lingue diverse.

  • C#
  • Giava
  • JavaScript
  • Pitone
  • Rubino

Ailla che supportano lingue diverse, il selenio supporta anche più browser. A differenza del burattinaio che installa Chromium durante l'installazione, potrebbe essere necessario installare i driver Web per il browser Web di tua scelta.

Qui ci sono collegamenti ai driver Web per Mozilla Firefox e Google Chrome.

Se desideri utilizzare anche l'IDE del selenio, esiste anche per più browser. Ecco i collegamenti a Selenio IDE per Mozilla Firefox e Google Chrome.

Caratteristiche

La sua capacità di lavorare con i browser senza testa ha reso senza dubbio lo strumento di automazione web più popolare, ma ci sono altre funzionalità che lo rendono potente.

Supporto multi-lingua:

Questa è una caratteristica di selenio molto importante. Con il suo supporto per la lingua multipla, più sviluppatori possono utilizzare lo strumento per le loro attività di test di automazione web. Mentre si potrebbe pensare che il suo supporto multi-linguaggio lo renderebbe lentamente, il selenio funziona ancora a una buona velocità poiché non è richiesto l'avvio di un server nel driver web.

Supporto multipiattaforma:

Allo stesso modo il selenio non è limitato dalle barriere linguistiche, non è anche limitato dalla barriera della piattaforma. Non è una notizia che l'applicazione Web si comporti in modo diverso su più piattaforme. Selenio offre ai tester la possibilità di testare tra i principali browser Web per offrire un'esperienza utente regolare per gli utenti attraverso diversi browser. Browser, selenio può anche essere utilizzato per testare mobili come Android, iOS, Windows, BlackBerry Apps.

Strumento di registrazione:

Con Selenio IDE, è facile registrare i test di automazione Web. Selenio IDE consente ai tester di utilizzare la capacità di registrazione, nonché il supporto di completamento automatico e la capacità di navigare nei comandi. Lo strumento di registrazione ha smesso di funzionare sulle versioni Firefox 55 e successive, tuttavia ci sono altri plugin su Firefox che servono allo stesso scopo. Pertanto, la capacità di registrare i test rimane una delle principali funzionalità di selenio.

Web rashing:

Mentre il selenio viene utilizzato per testare le applicazioni Web, si ridimensiona anche come un raschietto Web. Il selenio può essere utilizzato per raschiare i siti Web Ajax e i siti Web più difficili da raschiare, a condizione che sia possibile comprendere la struttura HTML. Puoi dare un'occhiata a questo tutorial sull'utilizzo di Selenio per Web rashing con Python.

Professionisti

  1. Supporto multipiattaforma.
  2. Supporto multi-lingua.
  3. Capacità di registrare i test.
  4. Può anche prendere screenshot.
  5. Enorme comunità di utenti.

Contro

  1. Lento rispetto al burattinaio.
  2. Controllo limitato sui test rispetto al burattinaio.

Conclusione

Se non sei disturbato a testare pagine Web su altre piattaforme a parte Chrome, allora stai bene a lavorare con Puppeteer, a condizione che tu sia in grado di lavorare con JavaScript (nodo). Tuttavia, se sei preoccupato per più piattaforme, l'utilizzo di selenio è un gioco da ragazzi. Parlando delle loro abilità di raschiatura web, entrambi gli strumenti sono anche se stessi là fuori. Va notato però che il burattinaio potrebbe essere più veloce del selenio.

Qualsiasi strumento che scegli alla fine della giornata dovrebbe andare bene, divertiti a scrivere i tuoi script di automazione.