Jak zacházet s ověřováním proxy v Selenium Webdriver

Co je proxy?

Proxy funguje jako prostředník mezi klienty odesílajícími požadavky a odpovědí serveru. Primárním použitím proxy je zachování soukromí a zapouzdření mezi více interaktivními systémy.

Proxy může také přidat další vrstvu zabezpečení na webu tím, že funguje jako firewall mezi klientem a webovými servery. To se používá zejména tehdy, když webové stránky, které klienti používají, musí být označeny jako povolené nebo blokované na základě obsahu webových stránek.

Tento proces je známý jako „filtrování obsahu“ a nejčastěji se používá ve vzdělávacích institucích, firemních kancelářích atd. Filtrování obsahu lze snadno provést pomocí proxy serveru. V podmínkách internetu může být proxy implementován jako samostatný server, který stojí mezi klientskými stroji a skutečnými webovými nebo databázovými servery, které reagují.

Rozdíl mezi SOCKS a HTTP Proxy

SOCKS HTTP proxy
SOCKS znamená zabezpečené zásuvky. Obecně se používá jako firewall mezi klientem a serverem HTTP Proxy lze také použít jako firewall mezi klientem a serverem, ale lze jej použít pouze pro požadavky HTTP
SOCKS neinterpretuje vyměňovaná data HTTP Proxy interpretuje data vyměňovaná mezi klientem a serverem
Výkonově pomalejší Lepší výkon ve srovnání s SOCKS

Jak zacházet s proxy v Selenium Webdriver v Chrome

HTTP proxy ověřování s Selenium v Chrome lze zpracovat pomocí následujících přístupů

  • Pomocí nástroje AutoIT
  • Použití upozornění

Pomocí nástroje AutoIT

Auto IT je nástroj třetí strany, který se používá pro automatizaci plochy Windows. Od Selenium zpracovává pouze webová vyskakovací okna a okna, manipulace s ovládacími prvky operačního systému není možná Selenium.

To vyžaduje použití externích nástrojů třetích stran, jako je Auto IT, se kterými je třeba integrovat Selenium. K tomu se Auto IT nejčastěji používá pro zpracování nahrávání souborů a stahování souborů na webových stránkách.

Chcete-li používat AutoIT, musíte si stáhnout a nainstalovat software AutoIT na naše místní počítače.

Stáhněte si instalaci AutoIT je zahrnuto v článek.

Otevřete Programy – Nástroj Autoit – Editor skriptů SciTE a přidejte níže uvedený skript AutoIt do editoru Autoit a uložte jej do systému jako „ProxyAuthentication.au3“

Zkompilujte soubor a převeďte jej jako 'ProxyAuthentication.exe.'

In Eclipse, přidejte soubor Auto IT do Selenium Skriptujte a spusťte

Níže je uveden skript AutoIT pro ověřování HTTP proxy

Send("guru99{ENTER}")
Send("guru99{ENTER}")

Musíte předat soubor Auto IT k provedení Selenium webdriver pomocí níže uvedeného kódu

Zdrojový kód:

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("http://demo.guru99.com/test/basic_auth.php");
        //Passing the AutoIt Script to Selenium	
        Runtime.getRuntime().exec("D:\\Data_Personal\\ProxyAuthentication.exe");
    }
}

Vysvětlení kódu:

  • V prvním kroku inicializujete instanci ovladače Chrome nastavením systémové vlastnosti tak, aby ukazovala na soubor chromedriver.exe
  • Ve druhém kroku pak inicializujete objekt webového ovladače a předáváte URL webu pomocí metody get
  • Nakonec předáváte uživatelské jméno a heslo do vyskakovacího okna ověřování HTTP Proxy pomocí souboru skriptu AutoIT

Výstup kódu:

Zpracování upozornění na uživatelské jméno pomocí AutoIT
Zpracování upozornění na uživatelské jméno pomocí AutoIT
Zpracování upozornění na heslo pomocí AutoIT

Zpracování upozornění na heslo pomocí AutoIT
Obrazovka úspěšného ověření proxy

Obrazovka úspěšného ověření proxy

Použití upozornění

Upozornění jsou jednoduché, vestavěné funkce poskytované Selenium webový ovladač. Vyskakovací okna ověřování proxy můžete zpracovávat pomocí Selenium webový ovladač přepnutím na výstrahu ověřování HTTP proxy a předáním uživatelského jména a hesla přímo výstrahě. S pomocí metody odesílání klíčů.

Příklad:

Scénář testu:

Zpracujte vyskakovací okno ověřování HTTP Proxy na webu: https://demo.guru99.com/test/basic_auth.php pomocí Upozornění v Selenium webový ovladač.

Příklad zdrojového kódu:

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("http://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();
    }
}

Výstup kódu

Ověření proxy bylo úspěšně provedeno.

Vysvětlení kódu:

  • Zpočátku vytváříte instanci ovladače Chrome nastavením vlastnosti webdriver tak, aby ukazovala umístění souboru chromedriver.exe
  • Poté otevřete adresu URL požadovaného webu předáním adresy URL jako parametru metodě driver.get().
  • Jakmile je URL otevřena, přepnete na upozornění na uživatelské jméno a odešlete uživatelské jméno – guru99. Poté kliknete na tlačítko OK na upozornění pomocí metody alert.accept
  • Poté přecházíte na upozornění na heslo a posíláte heslo – guru99. Poté kliknete na tlačítko OK na upozornění pomocí metody alert.accept

Shrnutí

  • Proxy funguje jako prostředník mezi klienty odesílajícími požadavky a odpovědí serveru. Základní použití proxy je zachování soukromí a zapouzdření mezi více interaktivními systémy.
  • HTTP proxy ověřování s Selenium v Chrome lze zpracovat pomocí následujících přístupů
  • Předání uživatelského jména a hesla v URL webu
  • Pomocí nástroje AutoIT
  • Použití upozornění
  • Z výše uvedených tří přístupů je použití výstrah nejúčinnějším způsobem, jak zpracovat ověřování HTTP Proxy Selenium webový ovladač