Kako rukovati proxy autentifikacijom u Selenium Webdriver
Što je proxy?
Proxy djeluje kao posrednik između klijenata koji šalju zahtjeve i poslužitelja koji odgovara. Primarna upotreba proxyja je održavanje privatnosti i enkapsulacije između više interaktivnih sustava.
Proxy također može dodati još jedan sloj sigurnosti na webu djelujući kao vatrozid između klijenta i web poslužitelja. Ovo se posebno koristi kada web stranice koje klijenti koriste moraju biti označene kao dopuštene ili blokirane na temelju sadržaja web stranice.
Ovaj proces je poznat kao 'Filtriranje sadržaja' i najčešće se koristi u obrazovnim ustanovama, korporativnim uredima itd. Filtriranje sadržaja može se lako izvršiti uz pomoć proxyja. Što se tiče interneta, proxy se može implementirati kao zaseban poslužitelj koji stoji između klijentskih strojeva i stvarnih web poslužitelja ili poslužitelja baze podataka koji odgovaraju.
Razlika između SOCKS-a i HTTP proxyja
čarape | HTTP proxy |
---|---|
SOCKS označava osigurane utičnice. Obično se koristi kao vatrozid između klijenta i poslužitelja | HTTP proxy se također može koristiti kao vatrozid između klijenta i poslužitelja, ali se može koristiti samo za HTTP zahtjeve |
SOCKS ne tumači podatke koji se razmjenjuju | HTTP proxy tumači podatke koji se razmjenjuju između klijenta i poslužitelja |
Sporije u pogledu performansi | Bolji učinak u usporedbi s SOCKS |
Kako rukovati proxyjem Selenium Webdriver u Chromeu
HTTP proxy provjera autentičnosti s Selenium u Chromeu može se rukovati pomoću sljedećih pristupa
- Korištenje alata AutoIT
- Korištenje upozorenja
Korištenje alata AutoIT
Auto IT je alat treće strane koji se koristi za automatizaciju Windows radne površine. Od Selenium rukuje samo web-baziranim skočnim prozorima i prozorima, rukovanje kontrolama operativnog sustava nije moguće koristiti Selenium.
To zahtijeva korištenje vanjskih alata trećih strana kao što je Auto IT s kojima se treba integrirati Selenium. Za to se Auto IT najčešće koristi za rukovanje učitavanjem i preuzimanjem datoteka na web stranicama.
Da biste koristili AutoIT, morate preuzeti i instalirati AutoIT softver na našim lokalnim računalima.
Preuzimanje instalacije AutoIT-a je pokriveno u članak.
Otvorite Programs – Autoit tool – SciTE Script Editor i dodajte dolje navedenu AutoIt skriptu u Autoit editor i spremite je kao 'ProxyAuthentication.au3' u svoj sustav
Prevedite datoteku i pretvorite je u "ProxyAuthentication.exe".
In Eclipse, dodajte datoteku Auto IT u Selenium Skriptirajte i pokrenite
Ispod je AutoIT skripta za HTTP proxy provjeru autentičnosti
Send("guru99{ENTER}") Send("guru99{ENTER}")
Morate proslijediti datoteku Auto IT za izvršenje Selenium webdriver pomoću donjeg koda
Izvorni kod:
package Guru99Demo; import java.io.IOException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class AutoITDemo { public static void main(String[] args) throws IOException { System.setProperty("webdriver.chrome.driver", "D:\\ chromedriver.exe");; WebDriver driver = new ChromeDriver(); driver.get("https://demo.guru99.com/test/basic_auth.php"); //Passing the AutoIt Script to Selenium Runtime.getRuntime().exec("D:\\Data_Personal\\ProxyAuthentication.exe"); } }
Objašnjenje koda:
- U prvom koraku inicijalizirate instancu Chrome upravljačkog programa postavljanjem svojstva sustava da usmjerava na datoteku chromedriver.exe
- U drugom koraku inicijalizirate objekt web upravljačkog programa i prosljeđujete URL web stranice pomoću metode get
- Konačno, prosljeđujete korisničko ime i lozinku skočnom prozoru za autentifikaciju HTTP proxyja pomoću datoteke skripte AutoIT
Izlaz koda:
Korištenje upozorenja
Upozorenja su jednostavna, ugrađena značajka koju pruža Selenium web vozač. Možete upravljati proxy proxy skočnim prozorima za provjeru autentičnosti pomoću Selenium web upravljački program prebacivanjem na upozorenje za provjeru autentičnosti HTTP proxyja i prosljeđivanjem korisničkog imena i lozinke izravno u upozorenje. Uz pomoć metode slanja ključeva.
Primjer:
Testni scenarij:
Rukovanje skočnim prozorom za autentifikaciju HTTP proxyja na web mjestu: https://demo.guru99.com/test/basic_auth.php pomoću upozorenja u Selenium web vozač.
Primjer izvornog koda:
package Guru99Demo; import java.io.IOException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class AlertsDemo { public static void main(String args[]) throws IOException { System.setProperty("webdriver.chrome.driver", "D:\\Data_Personal\\Software\\chromedriver_win32\\chromedriver.exe");; WebDriver driver = new ChromeDriver(); driver.get("https://demo.guru99.com/test/basic_auth.php"); // Handling Username alert driver.switchTo().alert().sendKeys("guru99"); driver.switchTo().alert().accept(); // Handling Password alert driver.switchTo().alert().sendKeys("guru99"); driver.switchTo().alert().accept(); } }
Izlaz koda
Proxy autentifikacija je uspješno obavljena.
Objašnjenje koda:
- U početku instancirate instancu Chrome upravljačkog programa postavljanjem svojstva webdriver da pokazuje lokaciju datoteke chromedriver.exe
- Zatim otvarate URL potrebne web stranice prosljeđujući URL kao parametar metodi driver.get().
- Nakon što se URL otvori, prelazite na upozorenje o korisničkom imenu i šaljete korisničko ime – guru99. Zatim kliknete gumb U redu na upozorenju pomoću metode alert.accept
- Zatim se prebacujete na upozorenje o lozinci i šaljete lozinku – guru99. Zatim kliknete gumb U redu na upozorenju pomoću metode alert.accept
Rezime
- Proxy djeluje kao posrednik između klijenata koji šalju zahtjeve i poslužitelja koji odgovara. Osnovna uporaba proxyja je održavanje privatnosti i ovijanje između više interaktivnih sustava.
- HTTP proxy provjera autentičnosti s Selenium u Chromeu može se rukovati pomoću sljedećih pristupa
- Prosljeđivanje korisničkog imena i lozinke u URL-u web stranice
- Korištenje alata AutoIT
- Korištenje upozorenja
- Od gornja tri pristupa, korištenje upozorenja je najučinkovitiji način za rukovanje HTTP proxy autentifikacijom Selenium mrežni pogonitelj