HTMLUnitDriver sisse Selenium

Peata brauser on veebibrauser, millel puudub graafiline kasutajaliides. See võib töötada taustal ilma visuaalsete häireteta. See pakub tõhusat ja tõhusat viisi veebirakenduste testimiseks, säästes samal ajal aega ja ressursse. Selles õpetuses uurime, mis on peata brauser, millal kasutada peata brauseri testimist ja kuidas seda teha Selenium.

Mis on peata brauser?

Peata brauser on veebibrauser ilma graafilise kasutajaliideseta. See programm käitub täpselt nagu brauser, kuid ei näita GUI-d.

Mõned näited peata draiveritest hõlmavad järgmist

  • HTML-üksus
  • Kummitus
  • PhantomJS
  • ZombieJS
  • Watir-veebidraiver

Millal kasutada peata brauseri testimist?

Tänasel digiajastul töötatakse veebirakendusi välja nii, et need ühilduksid paljude seadmete ja platvormidega. See on sageli väljakutse veebisaitide arendajatele, kes peavad tagama, et nende rakendused töötaksid sujuvalt nendel platvormidel. Peata brauseri testimine on selle probleemi jaoks ideaalne lahendus, kuna see võimaldab arendajatel testida oma veebirakendusi, ilma et oleks vaja graafilist kasutajaliidest. Kasutades peata brauseri testimist, saavad arendajad hõlpsasti testida keerulisi mitme komponendi ja sõltuvusega veebirakendusi, sillutades teed kiiremale arendusele, veavabale koodile ja õnnelikele kasutajatele.

Peata brauseri testimine koos Selenium

Selenium on võimas tööriist peata brauseri testimiseks, mis võimaldab arendajatel käivitada automatiseeritud teste ilma nähtava kasutajaliidese vajaduseta. Kui käivitate taustal teste, Selenium võib säästa aega ja ressursse, aidates samal ajal tuvastada probleeme, mis ei pruugi tavapärases kasutajaliidesepõhises testimiskeskkonnas ilmneda. See hõlmab jõudlusega seotud probleeme ja paigutusprobleeme, mis võivad ilmneda ainult ilma peata. Siiski on oluline meeles pidada peata testimise piiranguid ja tasakaalustada seda traditsiooniliste kasutajaliidesepõhiste meetoditega, et tagada igakülgne testide katvus.

Peata brauserite populaarsed näited

Saadaval on palju peata brausereid, millest igaühel on oma ainulaadsed funktsioonid ja eelised, mistõttu need sobivad erinevateks kasutusjuhtudeks. Arutame neid allpool: -

PhantomJS

PhantomJS on peata brauser, mis kasutab renderdusmootorina WebKiti ja toetab erinevaid veebistandardeid, nagu HTML5, CSS3 ja JavaSkript. Seda saab kasutada ekraani jäädvustamiseks ja lehtede 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 kõige populaarsem brauser ja pakub ka peata funktsiooni. Seda saab kasutada mitmel platvormil ning see toetab programmeerimiskeeli ja -raamistikke. Selle sisseehitatud silumistööriistad ja ulatuslik dokumentatsioon muudavad testimise käigus tekkida võivate probleemide kasutamise ja 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 testimise eesmärgil kasutada ka peata brauserina. Üks kasutamise eeliseid Firefox peata brauserina on selle kerge olemus, mistõttu on see mitmekülgne võimalus erinevate operatsioonisüsteemide testimiseks. Lisaks oma ulatusliku dokumentatsiooni ja kogukonna toega Firefox on suurepärane valik neile, kes soovivad katsetada peata brauseri tehnoloogiat.

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 testimisulatus
  • Paindlikkus testide läbiviimisel
  • Integreerimine CI/CD torujuhtmetega

Peata brauseri testimise puudused

  • GUI puudumine
  • Raskused silumisel
  • Piiratud brauseri tugi

HTMLUnitDriver

HTML UnitDriver on WebDriveri kõige kergem ja kiireim juurutatav peata brauser. See põhineb HtmlUnitil. Seda tuntakse kui Peata brauseri draiver. See on sama, mis Chrome, IE või FireFox draiver, kuid sellel pole GUI-d, nii et ekraanil ei näe testi täitmist.

HTML-seadme draiveri omadused

  • HTTPS- ja HTTP-protokolli tugi
  • HTML-i vastuste tugi (linkide klõpsamine, vormide esitamine, HTML-dokumendi DOM-mudeli järgimine jne)
  • Küpsiste tugi
  • Puhverserveri tugi
  • Põhi- ja NTLM-autentimise tugi
  • suurepärane JavaScript toetama
  • Esitamismeetodite GET ja POST tugi
  • Võimalus kohandada serverisse saadetavaid päringu päiseid
  • Võimalus määrata, kas serveri ebaõnnestunud vastused peaksid tegema erandeid või tuleks need tagastada sobivat tüüpi lehtedena

HTMLUnit Driveri kasutamise sammud Selenium

Step 1) In Eclipse, kopeerige järgmine kood. Lisage projekti standardsed seleeniteegi failid. 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 HTML unit 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();			
         }		
}

Samm 2) Käivitage kood. Näete, et ühtegi brauserit ei käivitata ja tulemusi kuvatakse konsoolis.

HTMLUnit draiveri kasutamise sammud Selenium

HTML-üksuse draiveri eelised:

  • Kuna see ei kasuta testimiseks GUI-d, töötavad teie testid taustal ilma visuaalsete katkestusteta
  • Võrreldes kõigi teiste eksemplaridega on täitmine kiirem
  • Testide käivitamiseks HtmlUnit draiveri kaudu saate valida ka teisi brauseri versioone
  • See on platvormist sõltumatu ja mitme testi samaaegne käivitamine on lihtsam. Ideaalne jaoks Koormuse testimine.

Piirangud:

  • See ei saa jäljendada teisi brausereid JavaSkripti käitumine

PhantomJS

PhantomJS on peata brauser JavaSkripti API. See on optimaalne lahendus peata veebisaitide testimiseks, veebilehtedele juurdepääsuks ja nendega manipuleerimiseks ning see on varustatud standardse DOM API-ga.

PhantomJS-i kasutamiseks koos Seleniuniga tuleb kasutada GhostDriverit. GhostDriver on Webdriver Wire protokolli rakendamine lihtsas JS-is PhantomJS-i jaoks.

PhatomJS-i uusim väljalase on integreeritud GhostDriver ja seda pole vaja eraldi paigaldada.

Siin on, kuidas süsteem töötab -

PhantomJS

Jooksmise sammud Selenium koos PhatomJS-iga

Step 1) Sa pead Eclipse koos Selenium paigaldatud

Step 2) Laadige alla PhantomJS siin

Jooksmise sammud Selenium PhatomJS-iga

Step 3) Ekstraheerige allalaaditud kaust kausta Program Files

Jooksmise sammud Selenium PhatomJS-iga

Step 4) Laadige alla PhantomJS-draiver saidilt siin. Lisage purk oma projekti

Jooksmise sammud Selenium PhatomJS-iga

Step 5) Kleepige eclipse'i järgmine kood

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äivitage kood. Näete, et väljund kuvatakse konsoolis ja brauserit ei käivitata.

MÄRKUSED: esimesel käivitamisel võite seadete põhjal saada turvahoiatuse Windows PhantomJS-i käivitamiseks. Klõpsake käsul Luba juurdepääs.

Jooksmise sammud Selenium PhatomJS-iga

Paljud organisatsioonid kasutavad Phantom.JS-i erinevatel eesmärkidel, näiteks

  • Peata testimine
  • Screen Capture
  • Lehekülje automatiseerimine
  • võrgu jälgimine
  • Armatuurlaua ekraanipiltide renderdamiseks nende kasutajatele
  • Ühikutestide käitamiseks käsureal
  • Töötajate käsiraamatute loomiseks HTML-ist PDF-i
  • Testkomplekti jaoks koos QUnitiga

kokkuvõte

Rakenduse kiireks testimiseks erinevates brauserites ja ilma visuaalse katkestuseta, peata brauser Testimine kasutatakse. Tänu oma kiirusele, täpsusele ja hõlpsasti juurdepääsetavatele funktsioonidele on HTML-seadme draiver ja PhantomJS kogumas populaarsust peata brauseri automatiseerimise testimisel. Mõningaid lihtsaid samme järgides saate teada, kui hõlpsalt saab neid tööriistu teiste tööriistadega integreerida ja testikoodi käivitada.