HTMLUnitDriver sisse SeleniumPeata brauseri õpetus
⚡ Nutikas kokkuvõte
HtmlUnitDriver on kiireim peata implementatsioon Selenium WebDriver, samas kui PhantomJS, mis oli kunagi populaarne GhostDriveril põhinev peata brauser, on alates 2018. aastast aegunud ja selle on nüüd asendanud peata Chrome, peata brauser Firefoxja Playwright kaasaegsete automatiseerimisvoogude jaoks.

Peata brauser on veebibrauser ilma graafilise kasutajaliideseta. See saab taustal töötada ilma visuaalse kuvamiseta.tracSee pakub tõhusat ja efektiivset viisi veebirakenduste testimiseks, säästes samal ajal aega ja ressursse. Selles artiklis uurime, mis on peata brauser, millal peata brauseri testimist kasutada ja kuidas seda teha, kasutades Selenium HtmlUnitDriver ja PhantomJS.
Mis on peata brauser?
Peata brauser on veebibrauser ilma graafilise kasutajaliidesetaSee programm käitub nagu tavaline brauser, kuid see ei kuva käivitamise ajal ühtegi graafilise kasutajaliidese akent.
Mõned näited peata brauseridraiveritest on järgmised:
- HTML-üksus
- Kummitus
- PhantomJS (aegunud)
- ZombieJS
- Watir-veebidraiver
- Peata Chrome
- Peata Firefox
Millal kasutada peata brauseri testimist?
Tänapäeva digiajastul on veebirakendused loodud ühilduma paljude seadmete ja platvormidega. See loob väljakutse arendajatele, kes peavad tagama oma rakenduste sujuva toimimise erinevates keskkondades. Peata brauseritestimine on ideaalne lahendus, kuna see võimaldab arendajatel oma veebirakendusi valideerida ilma graafilise kasutajaliideseta. Peata brauseritestimise abil saavad arendajad kiiresti katta keerulisi veebirakendusi, mis sisaldavad palju komponente ja sõltuvusi, sillutades teed kiiremale arendusele, vähematele vigadele ja rahulolevamatele kasutajatele.
Peata brauseri testimine koos Selenium
Selenium on võimas tööriist brauseri testimiseks ilma peata, mis võimaldab arendajatel käivitada automatiseeritud teste ilma nähtava kasutajaliideseta. Taustal testide käivitamisega Selenium säästab aega ja ressursse ning aitab kaping tuvastada probleeme, mis traditsioonilises kasutajaliidese-põhises testimiskeskkonnas ei pruugi ilmneda. See hõlmab jõudluse ja paigutuse probleeme, mis ilmnevad ainult liideseta testimises. Siiski on oluline tasakaalustada liideseta testimist traditsiooniliste kasutajaliidese-põhiste testidega, et tagada täielik katvus.
Peata brauserite populaarsed näited
Saadaval on palju peata brausereid, millel kõigil on oma omadused ja eelised, mis muudavad need sobivaks erinevateks kasutusjuhtudeks. Me arutame neid allpool.
PhantomJS
Toetuse lõpetamise teade: PhantomJS-i aktiivne arendus lõppes 2018. aastal ja projekti enam ei hallata. Uued projektid peaksid eelistama päideta Chrome'i, päideta Firefoxvõi Näitleja tänapäevaseks peata automatiseerimiseks. Allolev PhantomJS näide on lisatud ainult viitamiseks.
PhantomJS on peata brauser, mis kasutab renderdusmootorina WebKiti ja toetab veebistandardeid nagu HTML5, CSS3 ja JavaSkript. Seda saab kasutada ekraanipiltide tegemiseks ja lehe automatiseerimiseks. See on avatud lähtekoodiga ja ühildub mitme operatsioonisüsteemiga.
Näide Selenium Peata PhantomJS-iga Python:
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
# Set up PhantomJS options
phantomjs_options = webdriver.DesiredCapabilities.PHANTOMJS.copy()
phantomjs_options['phantomjs.page.settings.userAgent'] = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
# Set up the PhantomJS driver
driver = webdriver.PhantomJS('/path/to/phantomjs', desired_capabilities=phantomjs_options)
# Perform actions using the driver
driver.get('https://www.example.com')
print(driver.title)
# Close the driver
driver.quit()
Kroom
Chrome on planeedi populaarseim brauser ja pakub ka peata režiimi. Seda saab kasutada paljudel platvormidel ning see toetab populaarseid programmeerimiskeeli ja raamistikke. Selle sisseehitatud veaotsingu tööriistad ja ulatuslik dokumentatsioon muudavad selle kasutamise ja testimise ajal tekkida võivate probleemide tõrkeotsingu lihtsaks.
Peata Chrome'i näide koos Selenium in Python:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
# Set up Chrome options
chrome_options = Options()
chrome_options.add_argument('--headless') # Run Chrome in headless mode
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
# Set up the Chrome driver
driver = webdriver.Chrome('/path/to/chromedriver', options=chrome_options)
# Perform actions using the driver
driver.get('https://www.example.com')
print(driver.title)
# Close the driver
driver.quit()
Firefox
Firefox on populaarne veebibrauser, mida saab testimiseks kasutada ka näpunäideteta brauserina. Üks selle kasutamise eeliseid Firefox peata brauserina on selle kerge jalajälg, mis teeb sellest mitmekülgse valiku testimiseks erinevates operatsioonisüsteemides. Koos ulatusliku dokumentatsiooni ja kogukonna toega Firefox on suurepärane valik meeskondadele, kes katsetavad peata brauseriautomaatikat.
Peata näide Firefox koos Selenium in Python:
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
# Set up Firefox options
firefox_options = Options()
firefox_options.add_argument('--headless') # Run Firefox in headless mode
# Set up the Firefox driver
driver = webdriver.Firefox(options=firefox_options)
# Perform actions using the driver
driver.get('https://www.example.com')
print(driver.title)
# Close the driver
driver.quit()
Peata brauseri testimise eelised
- Testi kiirem läbiviimine
- Kulusäästlik testimine
- Parem testimise ulatus
- Paindlikkus testide läbiviimisel
- Lihtsam integreerimine CI/CD torujuhtmetega
Peata brauseri testimise puudused
- Nähtava graafilise kasutajaliidese puudumine käsitsi kontrollimiseks
- Silumise otsimine võib ilma ekraanita olla keerulisem
- Piiratud brauseripõhise käitumise katvus
HtmlUnitDriver
HtmlUnitDriver on kõige kergem ja kiirem peata brauseri implementatsioon Selenium WebDriver. See põhineb HtmlUnitil ja on tuntud ka kui Peata brauseri draiverSee käitub nagu Chrome, IE või Firefox draiver, kuid sellel puudub graafiline kasutajaliides, seega pole testi käivitamine ekraanil nähtav. HtmlUnitDriver'i hooldatakse endiselt ja levitatakse selle kaudu. org.seleniumhq.selenium:htmlunit3-driver Maveni artefakt.
HtmlUnitDriveri omadused:
- HTTPS- ja HTTP-protokolli tugi
- HTML-vastuste tugi (linkidele klõpsamine, vormide esitamine, HTML-dokumendi DOM-mudeli läbimine ja palju muud)
- Küpsiste tugi
- Puhverserveri tugi
- Põhi- ja NTLM-autentimise tugi
- Tahke JavaScript toetama
- GET ja POST esitamise meetodite tugi
- Võimalus kohandada serverisse saadetavaid päringu päiseid
- Võimalus kontrollida, kas serveri ebaõnnestunud vastused peaksid tekitama erandeid või tagastama need sobivat tüüpi lehtedena
HtmlUnitDriveri kasutamise sammud koos Selenium
Step 1) In Eclipse, kopeeri järgmine kood. Lisa standard Selenium teegifailid projekti. Täiendavaid JAR-faile pole vaja.
package htmldriver;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.htmlunit.HtmlUnitDriver;
public class htmlUnitYest {
public static void main(String[] args) {
// Creating a new instance of the HtmlUnit driver
WebDriver driver = new HtmlUnitDriver();
// Navigate to Google
driver.get("http://www.google.com");
// Locate the searchbox using its name
WebElement element = driver.findElement(By.name("q"));
// Enter a search query
element.sendKeys("Guru99");
// Submit the query. WebDriver searches for the form using the text input element automatically
// No need to locate/find the submit button
element.submit();
// This code will print the page title
System.out.println("Page title is: " + driver.getTitle());
driver.quit();
}
}
Step 2) Käivitage kood. Näete, et ühtegi brauserit ei käivitata ja tulemused kuvatakse konsoolis.
HtmlUnitDriveri eelised
- Kuna see ei kasuta graafilist kasutajaliidest, töötavad testid taustal ilma visuaalsete katkestusteta
- Võrreldes teiste draiveri eksemplaridega on täitmine kiirem
- HtmlUnitDriveri kaudu testide käivitamisel saate jäljendada ka erinevaid brauseriversioone.
-
See on platvormist sõltumatu ja sellega on lihtne samaaegselt mitut testi käivitada. See sobib ideaalselt koormuse testimine.
Piirangud:
- See ei saa täielikult jäljendada JavaIga päris brauserimootori skripti käitumine
PhantomJS
meeldetuletus: PhantomJS on aegunud ja seda enam ei hooldata. Uute juhtimisfunktsioonideta tööde jaoks kasutage Selenium peata Chrome'iga või Firefoxvõi kolige teosele „Näitekirjanik“. Allolev osa jääb ainult pärandviiteks.
PhantomJS on peata brauser, millel on JavaSkripti API. Seda kasutati ajalooliselt veebilehtede testimiseks ilma peata, veebilehtedele juurdepääsuks ja nende muutmiseks ning see on varustatud standardse DOM API-ga.
PhantomJS-i kasutamiseks koos Selenium, sul on vaja GhostDriverit. GhostDriver on WebDriver Wire Protocoli implementatsioon lihtsas keeles JavaSkript PhantomJS-i jaoks.
PhantomJS-i hilisemad versioonid integreeritud GhostDriver, nii et seda pole vaja eraldi paigaldada.
Süsteem töötab järgmiselt:
Jooksmise sammud Selenium koos PhantomJS-iga
Step 1) Sa pead Eclipse koos Selenium paigaldatud.
Step 2) Laadige alla PhantomJS siin.
Step 3) ExtracKopeeri allalaaditud kaust programmifailidesse.
Step 4) Laadige alla PhantomJS-draiver saidilt siinLisa JAR oma projektile.
Step 5) Kleepige järgmine kood sisse Eclipse.
package htmldriver;
import java.io.File;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.phantomjs.PhantomJSDriver;
public class phantom {
public static void main(String[] args) {
File file = new File("C:/Program Files/phantomjs-2.0.0-windows/bin/phantomjs.exe");
System.setProperty("phantomjs.binary.path", file.getAbsolutePath());
WebDriver driver = new PhantomJSDriver();
driver.get("http://www.google.com");
WebElement element = driver.findElement(By.name("q"));
element.sendKeys("Guru99");
element.submit();
System.out.println("Page title is: " + driver.getTitle());
driver.quit();
}
}
Step 6) Käivita kood. Konsoolis näed väljundit ja brauserit ei käivitata.
MÄRKUS: Esimesel käivitamisel võite olenevalt teie sätetest näha turvahoiatust saidilt Windows PhantomJS-i käivitamise lubamiseks klõpsake. luba juurdepääs.
Paljud organisatsioonid on ajalooliselt kasutanud PhantomJS-i selliste ülesannete jaoks nagu:
- Peata testimine
- Ekraanitõmmis
- Lehe automatiseerimine
- Võrgu jälgimine
- Armatuurlaua ekraanipiltide renderdamine kasutajatele
- Ühiktestide käivitamine käsureal
- Töötajate käsiraamatute genereerimine HTML-ist PDF-iks
- Testikomplekti kombineerimine QUnitiga
Uue töö puhul asenda need PhantomJS-i kasutusjuhud Chrome'iga, mis on peata. Firefoxvõi Playwright, mis saavad pidevalt turva- ja renderdusvärskendusi.






