Selenium Webdriver Java Primjer programa

โšก Pametni saลพetak

Selenium webdriver Java Primjer programa vodi vas kroz vaลก prvi skript za automatizaciju od poฤetka do kraja. LessObuhvaฤ‡aju postavljanje okruลพenja, lociranje elemenata, slanje ulaza, navigaciju, validaciju, ฤekanja, rukovanje iznimkama i najbolje prakse za pouzdane WebDriver testove.

  • ๏ธ Postavljanje okruลพenja: Instalirati Java, Eclipse ili IntelliJ, konfigurirajte Selenium biblioteke i odaberite odgovarajuฤ‡i binarni upravljaฤki program za verziju vaลกeg preglednika.
  • ๐Ÿงญ Lokatori elemenata: Koristite ID, naziv, klasu, XPath, CSS selektor i linkText za stabilnu identifikaciju elemenata u razliฤitim preglednicima i izdanjima.
  • โŒจ๏ธ Radnje i unosi: WebDriver podrลพava dogaฤ‘aje klika, slanja tipki, slanja, odabira padajuฤ‡ih izbornika i tipkovnice za potpunu interakciju u korisniฤkom stilu.
  • โณ Pametno ฤekanje: Zamijenite Thread.sleep implicitnim, eksplicitnim i fluentnim ฤekanjima voฤ‘enim ExpectedConditions kako biste uklonili nestabilne testove.
  • ???? Rukovanje iznimkama: Uhvatite NoSuchElementException, TimeoutException i StaleElementReferenceException kako biste osigurali otpornost automatizacijskih paketa.
  • ๐Ÿค– Generiranje AI testova: AI asistenti generiraju standardne WebDriver skripte, predlaลพu lokatore i automatski ispravljaju selektore kada se DOM promijeni.

Selenium webdriver Java program

Selenium Java Primjer

Koriลกtenje Java klase โ€œmyclassโ€ koju smo stvorili u prethodnom vodiฤu, pokuลกajmo stvoriti skriptu WebDriver koja bi:

Korak 1: donijeti Mercury Poฤetna stranica Tours
Korak 2: potvrdite njegov naslov
Korak 3: ispisati rezultat usporedbe
Korak 4: zatvorite prije zavrลกetka cijelog programa.

Selenium Primjer webdrivera Code

Ispod je stvarni WebDriver kod za logiku predstavljenu gornjim scenarijem

package newproject;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
//comment the above line and uncomment below line to use Chrome
//import org.openqa.selenium.chrome.ChromeDriver;
public class PG1 {


    public static void main(String[] args) {
        // declaration and instantiation of objects/variables
    	System.setProperty("webdriver.gecko.">driver","C:\\geckodriver.exe");
		WebDriver driver = new FirefoxDriver();
		//comment the above 2 lines and uncomment below 2 lines to use Chrome
		//System.setProperty("webdriver.chrome.">driver","G:\\chromedriver.exe");
		//WebDriver driver = new ChromeDriver();
    	
        String baseUrl = "https://demo.guru99.com/test/newtours/";
        String expectedTitle = "Welcome: Mercury Tours";
        String actualTitle = "";

        // launch Fire fox and direct it to the Base URL
        driver.get(baseUrl);

        // get the actual value of the title
        actualTitle = driver.getTitle();

        /*
         * compare the actual title of the page with the expected one and print
         * the result as "Passed" or "Failed"
         */
        if (actualTitle.contentEquals(expectedTitle)){
            System.out.println("Test Passed!");
        } else {
            System.out.println("Test Failed");
        }
       
        //close Fire fox
        driver.close();
    }

}

Napomena: Poฤinje Firefox 35, trebate koristiti gecko driver koji je izradila Mozilla da biste koristili Web Driver. Selenium 3.0, gecko i firefox imaju problema s kompatibilnoลกฤ‡u i njihovo ispravno postavljanje moglo bi postati teลพak zadatak. Ako kod ne radi, vratite se na Firefox verzija 47 ili niลพa. Alternativno, svoje skripte moลพete pokrenuti na Chromeu. Selenium radi izvan okvira za Chrome. Trebate samo promijeniti 3 retka koda kako bi vaลกa skripta radila s Chromeom ili Firefox

Objaลกnjavajuฤ‡i ลกifru

Uvoz paketa

Za poฤetak morate uvesti sljedeฤ‡a dva paketa:

  1. org.openqa.selenium.*โ€“ sadrลพi klasu WebDriver potrebnu za instanciranje novog preglednika uฤitanog s odreฤ‘enim upravljaฤkim programom
  2. org.openqa.selenium.firefox.Firefoxvozaฤ โ€“ sadrลพi FirefoxKlasa vozaฤa potrebna za instanciranje a Firefox-specifiฤni upravljaฤki program na preglednik koji instancira klasa WebDriver

Ako vaลก test zahtijeva kompliciranije radnje kao ลกto je pristup drugoj klasi, snimanje zaslona preglednika ili manipuliranje vanjskim datotekama, svakako ฤ‡ete morati uvesti viลกe paketa.

Instanciranje objekata i varijabli

Obiฤno se ovako instancira pogonski objekt.

WebDriver driver = new FirefoxDriver();

A FirefoxKlasa vozaฤa bez parametara znaฤi da je zadana Firefox profil ฤ‡e pokrenuti naลก Java program. Zadana vrijednost Firefox profil je sliฤan pokretanju Firefox u sigurnom naฤinu rada (nisu uฤitana proลกirenja).

Radi praktiฤnosti, spremili smo bazu URL i oฤekivani naslov kao varijable.

Pokretanje sesije preglednika

WebDriver's dobiti() Metoda se koristi za pokretanje nove sesije preglednika i usmjerava je na URL koji navedete kao njegov parametar.

driver.get(baseUrl);

Dobijte stvarni naslov stranice

Klasa WebDriver ima getTitle() metoda koja se uvijek koristi za dobivanje naslova trenutno uฤitane stranice.

actualTitle = driver.getTitle();

Usporedite oฤekivane i stvarne vrijednosti

Ovaj dio koda jednostavno koristi osnovni Java strukturu if-else za usporedbu stvarnog naslova s โ€‹โ€‹oฤekivanim.

if (actualTitle.contentEquals(expectedTitle)){
            System.out.println("Test Passed!");
        } else {
            System.out.println("Test Failed");
        }

Prekid sesije preglednika

"Zatvoriti()โ€ koristi se za zatvaranje prozora preglednika.

driver.close();

Prekid cijelog programa

Ako koristite ovu naredbu bez prethodnog zatvaranja svih prozora preglednika, cijeli Java program ฤ‡e zavrลกiti dok je prozor preglednika otvoren.

System.exit(0);

Izvoฤ‘enje testa

Postoje dva naฤina za izvrลกavanje koda Eclipse SDI.

  1. On Eclipsena traci izbornika, kliknite Trฤi > Trฤi.
  2. Press Ctrl + F11 za pokretanje cijelog koda.

Izvoฤ‘enje testa

Ako ste sve napravili kako treba, Eclipse ispisao bi "Test proลกao!"

Izvoฤ‘enje testa

Lociranje GUI elemenata

Lociranje elemenata u WebDriver-u vrลกi se pomoฤ‡u "pronaฤ‘iElement(Po.lokator())โ€ metoda. Dio koda "lokator" isti je kao bilo koji od lokatora o kojima se prethodno raspravljalo u Selenium IDE poglavlja ovih udลพbenika. Zapravo, preporuฤuje se da locirate GUI elemente pomoฤ‡u IDE-a i nakon uspjeลกne identifikacije izvezete kod u WebDriver.

Ovdje je Selenium primjer koda koji locira element prema njegovom ID-u. Facebook se koristi kao baza URL.

package newproject;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class PG2 {
    public static void main(String[] args) {
    	System.setProperty("webdriver.gecko.">driver","C:\\geckodriver.exe");
    	WebDriver driver = new FirefoxDriver();
        String baseUrl = "http://www.facebook.com";
        String tagName = "";
        
        driver.get(baseUrl);
        tagName = driver.findElement(By.id("email")).getTagName();
        System.out.println(tagName);
        driver.close();
        System.exit(0);
}
}

Koristili smo getTagName() metoda za bivลกitracnaziv oznake tog odreฤ‘enog elementa ฤiji je ID "email". Kada se pokrene, ovaj kod bi trebao moฤ‡i ispravno identificirati naziv oznake "input" i ispisati ga na EclipseProzor konzole korisnika.

Lociranje GUI elemenata

Saลพetak za lociranje elemenata

varijacija Description Uzorak
By.className pronalazi elemente na temelju vrijednosti atributa โ€œclassโ€. findElement(By.className(โ€œsomeClassNameโ€))
By.cssSelector pronalazi elemente na temelju pogonskog CSS Selector motora findElement(By.cssSelector(โ€œinput#emailโ€))
By.id locira elemente prema vrijednosti njihovog "id" atributa findElement(By.id(โ€œsomeIdโ€))
 
By.linkText pronalazi element veze prema toฤnom tekstu koji prikazuje findElement(By.linkText(โ€œREGISTRACIJAโ€))
 
Imenom locira elemente prema vrijednosti atributa โ€œnameโ€. findElement(By.name(โ€œsomeNameโ€))
 
By.partialLinkText locira elemente koji sadrลพe zadani tekst veze findElement(By.partialLinkText(โ€œREGโ€))
 
By.tagName locira elemente prema njihovom nazivu oznake findElement(By.tagName(โ€œdivโ€))
 
By.xpath locira elemente putem XPath-a findElement(By.xpath(โ€œ//html/body/div/table/tbody/tr/td[2]/table/
tbody/tr[4]/td/table/tbody/tr/td[2]/table/tbody/tr[2]/td[3]/ form/table/tbody/tr[5]โ€))

Napomena o koriลกtenju findElement(By.cssSelector())

By.cssSelector() ne podrลพava znaฤajku "sadrลพi". Razmotrite Selenium IDE kod ispod โ€“

Napomena o koriลกtenju findElement(By.cssSelector())

In Selenium IDE iznad, cijeli je test proลกao. Meฤ‘utim u Selenium WebDriver skripta u nastavku, isti je test generirao pogreลกku jer WebDriver ne podrลพava kljuฤnu rijeฤ "contains" kada se koristi u metodi By.cssSelector().

Napomena o koriลกtenju findElement(By.cssSelector())

Uobiฤajene naredbe

Instanciranje web elemenata

Umjesto koriลกtenja duge sintakse "driver.findElement(By.locator())" svaki put kada pristupite odreฤ‘enom elementu, moลพemo instancirati WebElement objekt za njega. Klasa WebElement sadrลพana je u paketu โ€œorg.openqa.selenium.*โ€.

Instanciranje web elemenata

Klikom na element

Klikanje je moลพda najฤeลกฤ‡i naฤin interakcije s web elementima. The click() Metoda se koristi za simulaciju klika bilo kojeg elementa. Sljedeฤ‡e Selenium Java primjer pokazuje kako click() koristio se za klikanje Mercury Toursov gumb โ€œPrijavaโ€.

Klikom na element

Kada koristite metodu click(), potrebno je obratiti pozornost na sljedeฤ‡e stvari.

  • Ne uzima nikakav parametar/argument.
  • Metoda automatski ฤeka da se uฤita nova stranica ako je primjenjiva.
  • Element na koji se klikne mora biti vidljiv (visina i ลกirina ne smiju biti jednake nuli).

Nabavite naredbe

Naredbe Get dohvaฤ‡aju razne vaลพne informacije o stranici/elementu. Evo nekoliko vaลพnih naredbi "get" s kojima morate biti upoznati.

Naredbe Upotreba
dobiti()

Primjer upotrebe:

  • Automatski otvara novi prozor preglednika i dohvaฤ‡a stranicu koju navedete unutar njegovih zagrada.
  • To je pandan od Selenium IDE naredba โ€œotvoriโ€.
  • Parametar mora biti a Niz objekt.
getTitle()

Primjer upotrebe:

  • Nema potrebe za parametrima
  • Dohvaฤ‡a naslov trenutne stranice
  • Bijeli razmaci na poฤetku i na kraju su odrezani
  • Vraฤ‡a nulti niz ako stranica nema naslov
getPageSource()

Primjer upotrebe:

  • Nema potrebe za parametrima
  • Vraฤ‡a izvorni kod stranice kao String vrijednost
getCurrentUrl()

Primjer upotrebe:

  • Nema potrebe za parametrima
  • Dohvaฤ‡a niz koji predstavlja trenutnu vrijednost URL koje preglednik gleda
getText()

Primjer upotrebe:

  • Dohvaฤ‡a unutarnji tekst elementa koji navedete

Navigacijske naredbe

Ove vam naredbe omoguฤ‡uju osvjeลพavanje, ulaลพenje i prebacivanje izmeฤ‘u razliฤitih web stranica.

navigacija().do()

Primjer upotrebe:

  • Automatski otvara novi prozor preglednika i dohvaฤ‡a stranicu koju navedete unutar njegovih zagrada.
  • Radi toฤno isto ลกto i get() metoda.
navigacija().refresh()

Primjer upotrebe:

  • Nema potrebe za parametrima.
  • Osvjeลพava trenutnu stranicu.
navigacija().natrag()

Primjer upotrebe:

  • Nema potrebe za parametrima
  • Vraฤ‡a vas za jednu stranicu unatrag u povijesti preglednika.
navigacija().naprijed()

Primjer upotrebe:

  • Nema potrebe za parametrima
  • Vodi vas naprijed za jednu stranicu u povijesti preglednika.

Zatvaranje i izlazak iz preglednika Windows

Zatvoriti()

Primjer upotrebe:

  • Nema potrebe za parametrima
  • Zatvara samo prozor preglednika koji WebDriver trenutno kontrolira.
prestati()

Primjer upotrebe:

  • Nema potrebe za parametrima
  • Zatvara sve prozore koje je WebDriver otvorio.

Zatvaranje i izlazak iz preglednika Windows

Da bi se jasno ilustrirala razlika izmeฤ‘u close() i quit(), pokuลกajte izvrลกiti kod u nastavku. Koristi web stranicu koja automatski iskaฤe prozor nakon uฤitavanja stranice i otvara drugi nakon izlaska.

Zatvaranje i izlazak iz preglednika Windows

Primijetite da je zatvoren samo nadreฤ‘eni prozor preglednika, a ne dva skoฤna prozora.

Zatvaranje i izlazak iz preglednika Windows

Ali ako koristite quit(), zatvorit ฤ‡e se svi prozori โ€“ ne samo nadreฤ‘eni. Pokuลกajte pokrenuti kod u nastavku i primijetit ฤ‡ete da ฤ‡e se dva skoฤna prozora iznad automatski zatvoriti.

package newproject;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class PG3 {
    public static void main(String[] args) {
    	System.setProperty("webdriver.gecko.">driver","C:\\geckodriver.exe");
    	WebDriver driver = new FirefoxDriver();
        driver.get("http://www.popuptest.com/popuptest2.html");
        driver.quit();  // using QUIT all windows will close
    }
}

Prebacivanje izmeฤ‘u okvira

Da bismo pristupili GUI elementima u Frameu, prvo trebamo uputiti WebDriver da se fokusira na okvir ili skoฤni prozor prije nego ลกto moลพemo pristupiti elementima unutar njih. Uzmimo, na primjer, web stranicu https://demo.guru99.com/selenium/deprecated.html

Prebacivanje izmeฤ‘u okvira

Ova stranica ima 3 okvira ฤiji su atributi "naziv" navedeni gore. ลฝelimo pristupiti vezi "Zastarjelo" koja je gore zaokruลพena ลพutom bojom. Da bismo to uฤinili, prvo moramo uputiti WebDriver da se prebaci na okvir "classFrame" koristeฤ‡i โ€œswitchTo().frame()โ€ metoda. Koristit ฤ‡emo atribut name okvira kao parametar za dio "frame()".

package newproject;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class PG4 {
	  public static void main(String[] args) {
		  	System.setProperty("webdriver.gecko.">driver","C:\\geckodriver.exe");  
		  	WebDriver driver = new FirefoxDriver();
	        driver.get("https://demo.guru99.com/selenium/deprecated.html");
	        driver.switchTo().frame("classFrame");
	        driver.findElement(By.linkText("Deprecated")).click();
	        driver.close(); 
	    }
}

Nakon izvrลกavanja ovog koda, vidjet ฤ‡ete da je okvir โ€œclassFrameโ€ prebaฤen na stranicu โ€œDeprecated APIโ€, ลกto znaฤi da je naลก kod uspjeลกno mogao pristupiti vezi โ€œDeprecatedโ€.

Prebacivanje izmeฤ‘u skoฤnih prozora Windows

WebDriver omoguฤ‡uje prikazivanje skoฤnih prozora poput upozorenja, za razliku od Selenium IDE. Za pristup elementima unutar upozorenja (kao ลกto je poruka koju sadrลพi), moramo koristiti "switchTo().alert()" metoda. U donjem kodu koristit ฤ‡emo ovu metodu za pristup okviru s upozorenjem i zatim dohvatiti njegovu poruku pomoฤ‡u "getText()" naฤin, a zatim automatski zatvorite okvir s upozorenjem pomoฤ‡u "switchTo().alert().accept()" metoda.

Prvo prijeฤ‘ite na https://output.jsbin.com/usidix/1 i ruฤno kliknite "Kreni!" i sami pogledajte tekst poruke.

Prebacivanje izmeฤ‘u skoฤnih prozora Windows

Da vidimo Selenium primjer koda za ovo-

package mypackage;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class myclass {

    public static void main(String[] args) {
    	System.setProperty("webdriver.gecko.">driver","C:\\geckodriver.exe");
        WebDriver driver = new FirefoxDriver();
        String alertMessage = "";

        driver.get("http://jsbin.com/usidix/1");
        driver.findElement(By.cssSelector("input[value=\"Go!\"]")).click();
        alertMessage = driver.switchTo().alert().getText();
        driver.switchTo().alert().accept();
       
        System.out.println(alertMessage);
        driver.quit();
       
    }
}

Na Eclipse konzole, primijetite da je ispisana poruka upozorenja:

Prebacivanje izmeฤ‘u skoฤnih prozora Windows

ฤeka

Postoje dvije vrste ฤekanja.

  1. Implicitno ฤekanje โ€“ koristi se za postavljanje zadanog vremena ฤekanja kroz cijeli program
  2. Eksplicitno ฤekanje โ€“ koristi se za postavljanje vremena ฤekanja samo za odreฤ‘enu instancu

Implicitno ฤekanje

  • Jednostavnije ga je kodirati nego eksplicitna ฤekanja.
  • Obiฤno se deklarira u instancijskom dijelu koda.
  • Trebat ฤ‡e vam samo jedan dodatni paket za uvoz.

Da biste poฤeli koristiti implicitno ฤekanje, morali biste uvesti ovaj paket u svoj kod.

Implicitno ฤekanje

Zatim u dijelu vaลกeg koda za instanciranje dodajte ovo.

Implicitno ฤekanje

Eksplicitno ฤekanje

Eksplicitna ฤekanja provode se pomoฤ‡u klasa WebDriverWait i ExpectedCondition. Za sljedeฤ‡e Selenium Primjer WebDriver-a, priฤekat ฤ‡emo do 10 sekundi da element ฤiji je ID "korisniฤko ime" postane vidljiv prije nego ลกto preฤ‘emo na sljedeฤ‡u naredbu. Evo koraka.

Korak 1:

Uvezite ova dva paketa:

Eksplicitno ฤekanje

Korak 2:

Deklarirajte varijablu WebDriverWait. U ovom primjeru koristit ฤ‡emo "myWaitVar" kao naziv varijable.

Eksplicitno ฤekanje

Korak 3:

Upotrijebite myWaitVar s ExpectedConditions na dijelovima gdje je potrebno eksplicitno ฤekanje. U ovom sluฤaju koristit ฤ‡emo eksplicitno ฤekanje na "korisniฤko ime" (Mercury Tours HomePage) unos prije nego ลกto na njega upiลกemo tekst "tutorial".

Eksplicitno ฤekanje

Uvjeti

Sljedeฤ‡e metode se koriste u uvjetnim i looping operacije โ€”

  • isEnabled() se koristi kada ลพelite provjeriti je li odreฤ‘eni element omoguฤ‡en ili ne prije izvrลกavanja naredbe.

Uvjeti isEnabled()

  • isDisplayed() koristi se kada ลพelite provjeriti je li odreฤ‘eni element prikazan ili ne prije izvrลกenja naredbe.

Uvjeti isDisplayed()

  • isSelected() koristi se kada ลพelite provjeriti je li odreฤ‘ena potvrdni okvir, radio gumb ili opciju u padajuฤ‡em okviru je odabrano. Ne radi na drugim elementima.

Uvjeti isSelected()

Koriลกtenje ExpectedConditions

Klasa ExpectedConditions nudi ลกiri skup uvjeta koje moลพete koristiti u kombinaciji s WebDriverWait metodom until().

Ispod su neke od najฤeลกฤ‡ih metoda ExpectedConditions.

  • alertIsPresent() โ€“ ฤeka dok se ne prikaลพe okvir upozorenja.

Upotreba ExpectedConditions alertIsPresent()

  • elementToBeClickable() โ€“ ฤŒeka dok element ne bude vidljiv i, u isto vrijeme, omoguฤ‡en. Uzorak Selenium Code dolje ฤ‡e priฤekati dok element s id=โ€usernameโ€ ne postane vidljiv i omoguฤ‡en prije nego ลกto dodijeli taj element kao varijablu WebElement pod nazivom โ€œtxtUserNameโ€.

Koriลกtenje ExpectedConditions

  • frameToBeAvailableAndSwitchToIt() โ€“ ฤŒeka dok zadani okvir veฤ‡ bude dostupan, a zatim se automatski prebacuje na njega.

Upotreba ExpectedConditions elementToBeClickable()

Hvatanje iznimaka

Kada koristite isEnabled(), isDisplayed() i isSelected(), WebDriver pretpostavlja da element veฤ‡ postoji na stranici. U suprotnom, izbacit ฤ‡e a NoSuchElementException. Da bismo to izbjegli, trebali bismo koristiti blok try-catch kako program ne bi bio prekinut.

WebElement txtbox_username = driver.findElement(By.id("username"));
try{
        if(txtbox_username.isEnabled()){
            txtbox_username.sendKeys("tutorial");
        }
    }

catch(NoSuchElementException nsee){
            System.out.println(nsee.toString());
 }

Ako koristite eksplicitna ฤekanja, vrsta iznimke koju biste trebali uhvatiti je "TimeoutException".

Hvatanje iznimaka

Pitanja i odgovori

Instalirajte JDK, IDE kao ลกto je Eclipse ili IntelliJ, Selenium Java biblioteke i odgovarajuฤ‡i upravljaฤki program preglednika. Izradite alate za automatizaciju poput Mavena ili Gradle pojednostaviti upravljanje ovisnostima.

Umjetna inteligencija automatski ispravlja lokatore, generira testne sluฤajeve iz korisniฤkih priฤa i identificira nestabilne testove. Platforme poput Testim, Mabl i Applitools ugraฤ‘uju umjetnu inteligenciju za pametnije kreiranje, izvrลกavanje i vizualnu validaciju.

Da. GitHub Copilot, Cursor i JetBrains AI generira Java Selenium skripte iz koraka napisanih jednostavnim jezikom, ukljuฤujuฤ‡i ฤekanja, tvrdnje i objekte stranica. Oni uvelike smanjuju predloลพak za nove testne scenarije.

findElement vraฤ‡a prvi odgovarajuฤ‡i WebElement ili izbacuje NoSuchElementException. findElements vraฤ‡a popis svih podudaranja i vraฤ‡a prazan popis ako se nijedno ne pronaฤ‘e, nikada ne izbacujuฤ‡i iznimku.

Thread.sleep pauzira na fiksno trajanje bez obzira na stanje stranice, usporavajuฤ‡i brza izvrลกavanja i prekidajuฤ‡i spora. Koristite WebDriverWait s ExpectedConditions za ฤekanje samo onoliko dugo koliko je potrebno.

Selenium podrลพava ChromeDriver, GeckoDriver za Firefox, EdgeDriver, SafariDriver i IEDriverServer. Selenium Manager u verziji 4 automatski preuzima ispravan upravljaฤki program.

Konfigurirajte ChromeOptions ili FirefoxObjekt Options s naredbom setAcceptInsecureCerts(true). Ovo govori pregledniku da ignorira nevaลพeฤ‡e certifikate kako bi se sesija WebDrivera mogla nastaviti.

WebDriverManager automatski preuzima i konfigurira ispravnu binarnu datoteku upravljaฤkog programa preglednika za instaliranu verziju preglednika, uklanjajuฤ‡i ruฤno odrลพavanje upravljaฤkih programa i smanjujuฤ‡i vrijeme postavljanja za nove suradnike.

Saลพmite ovu objavu uz: