Unità HTML - HtmlUnit
![]() | |
| Versione iniziale | 22 maggio 2002 |
|---|---|
| Rilascio stabile | 2.50.0 / 16 maggio 2021
|
| Repository |
|
| Scritto in | Giava |
| Sistema operativo | Multipiattaforma ( JVM ) |
| Disponibili in | inglese |
| Tipo | programma di navigazione in rete |
| Licenza | Licenza Apache 2.0 |
| Sito web | https://htmlunit.sourceforge.io/ |
HtmlUnit è un browser web senza testa scritto in Java . Consente la manipolazione di alto livello di siti Web da altro codice Java, inclusa la compilazione e l'invio di moduli e il clic sui collegamenti ipertestuali . Fornisce inoltre l'accesso alla struttura e ai dettagli all'interno delle pagine web ricevute . HtmlUnit emula parti del comportamento del browser inclusi gli aspetti di livello inferiore di TCP/IP e HTTP . Una sequenza come getPage(url), getLinkWith("Click here"), click()consente a un utente di navigare nell'ipertesto e ottenere pagine Web che includono HTML , JavaScript , Ajax e cookie . Questo browser headless può gestire la sicurezza HTTPS, l'autenticazione HTTP di base, il reindirizzamento automatico della pagina e altre intestazioni HTTP. Consente al codice di test Java di esaminare le pagine restituite come testo, un DOM XML o come raccolte di moduli, tabelle e collegamenti.
L'obiettivo è simulare browser reali; vale a dire Chrome , Firefox ESR 38, Internet Explorer 8 e 11 e Edge (sperimentale).
L'uso più comune di HtmlUnit è l' automazione dei test delle pagine Web, ma a volte può essere utilizzato per il web scraping o il download di contenuti di siti Web.
Benefici
- Fornisce API di alto livello, sottraendo all'utente i dettagli di livello inferiore.
- Rispetto ad altre implementazioni di WebDriver, HtmlUnitDriver è il più veloce da implementare.
- Può essere configurato per simulare browser specifici.
Svantaggi
- Il layout e il rendering degli elementi non possono essere testati.
- Il supporto JavaScript non è ancora completo. E questa è di solito l'area principale dei miglioramenti.
Tecnologie usate
- W3C DOM
- Connessione HTTP , utilizzando Apache HttpComponents
- JavaScript , utilizzando Rhino biforcuto
- Analisi HTML , NekoHTML
- CSS : utilizzo del parser CSS
- Supporto XPath , utilizzando Xalan
Librerie che utilizzano HtmlUnit
Guarda anche
- Sistema senza testa
- PhantomJS un WebKit senza testa con API JavaScript
- Raschiare il web
- Test web
- xUnit
- Sentiero del fiume
- Selenium WebDriver
Riferimenti
Bibliografia
- Beust, Cédric; Solimano, Hani (15 ottobre 2007).Test Java di nuova generazione: TestNG e concetti avanzati. ISBN 9780132702270.pp. 339– (richiesto abbonamento)
Ulteriori letture
- Langer, A. "Estensione HtmlUnit per l'automazione dei test di applicazioni Web utilizzando AJAX" ; Betreuer/in (nen): T. Grechenig, M. Bernhart; 183/1, 2009. (richiesto abbonamento)
- Massolo, Vincenzo; Timothy M. O'Brien (2005). Maven: il taccuino di uno sviluppatore . O'Reilly Media. pp. 83-86 . ISBN 978-0-596-55297-8.
- Tahchiev, Petar; Filippo Leme; Vincent Massol (2010). "12. Test del livello di presentazione". JUnit in azione (2 ed.). uomo. pp. 190-208. ISBN 978-1-935182-02-3.
- Harold, Elliotte Rusty (16 marzo 2012). Refactoring HTML . ISBN 9780132701877.
- Tong, Ka Iok (23 aprile 2006). Divertirsi con lo sviluppo Web con Tapestry . ISBN 9781411649132.
- Schalk, Chris; Burns, Ed; Holmes, James (25 agosto 2006). JavaServer Faces: il riferimento completo . ISBN 9780072262407. (richiesto abbonamento)
