Čo je trieda Možnosti prehliadača Chrome?
Trieda možností prehliadača Chrome sa používa na manipuláciu s rôznymi vlastnosťami ovládača Chrome. Trieda možností prehliadača Chrome sa zvyčajne používa v spojení s požadovanými funkciami.
Príklad:
Nasledujúci príklad ukazuje spôsob, ako otvoriť prehliadač Chrome v maximalizovanom režime pomocou triedy ChromeOptions. Inicializácii webového ovládača musíme odovzdať inštanciu triedy ChromeOptions.
Možnosti ChromeOptions = nové ChromeOptions ()options.addArgument ("štart-maximalizovaný");Ovládač ChromeDriver = nový ChromeDriver (možnosti);
Nižšie je uvedený zoznam dostupných a najčastejšie používaných argumentov pre triedu ChromeOptions
- start-maximalizated : Otvorí Chrome v režime maximalizácie
- inkognito: Otvorí Chrome v režime inkognito
- headless: Otvorí Chrome v bezhlavom režime
- disable-extensions : Zakáže existujúce rozšírenia v prehliadači Chrome
- disable-popup-blocking : Zakáže vyskakovacie okná zobrazené v prehliadači Chrome
- make-default-browser: Nastaví prehliadač Chrome ako predvolený
- version : Vypíše verziu prehliadača Chrome
- disable-infobars: Zabráni prehliadaču Chrome zobraziť upozornenie „Chrome je riadený automatizovaným softvérom
V tomto návode sa naučíte
- Čo je trieda Možnosti prehliadača Chrome?
- Trieda požadovaných schopností
- Možnosti prehliadača Chrome pre rozšírenie Adblocker
- Možnosti prehliadača Chrome pre režim inkognito
- Možnosti prehliadača Chrome pre bezhlavý Chrome
Trieda požadovaných schopností
Trieda požadovaných schopností sa používa na úpravu viacerých vlastností webového ovládača. Trieda Desired Capabilities poskytuje množinu párov kľúč - hodnota na zmenu jednotlivých vlastností webového ovládača, ako je názov prehliadača, platforma prehľadávača atď. Najčastejšie používanou metódou triedy Desired Capabilities je metóda setCapability. Desired Capabilities sa najčastejšie používa v Selenium Grid, kde je potrebné vykonať rovnaký testovací prípad v rôznych prehliadačoch.
Príklad:
Nasledujúci príklad ukazuje spôsob, ako povoliť prehliadaču Chrome prijímať certifikáty SSL na webových stránkach v predvolenom nastavení pomocou triedy Desired Capabilities.
// Vytvorte objekt požadovanej triedy schopností pomocou ovládača ChromeDesiredCapabilities SSLCertificate = DesiredCapabilities.chrome ();// Nastavte preddefinovanú hodnotu - ACCEPT_SSL_CERTS hodnotu na trueSSLCertificate.setCapability (CapabilityType.ACCEPT_SSL_CERTS, true);// Otvorte novú inštanciu chrómového ovládača s požadovanou schopnosťouOvládač WebDriver = nový ChromeDriver (SSLCertificate);
Ďalej sú uvedené najčastejšie používané preddefinované typy schopností.
Názov schopnosti | Popis |
ACCEPT_SSL_CERTS | Táto vlastnosť informuje prehliadač, aby predvolene akceptoval certifikáty SSL |
PLATFORM_NAME | Táto vlastnosť sa používa na nastavenie platformy operačného systému použitej na prístup na webovú stránku |
BROWSER_NAME | Táto vlastnosť sa používa na nastavenie názvu prehľadávača pre inštanciu webového ovládača |
VERZIA | Táto vlastnosť sa používa na nastavenie verzie prehliadača |
Možnosti prehliadača Chrome pre rozšírenie Adblocker
S rozšírením Adblocker v prehliadači Chrome sa dá zaobchádzať pomocou triedy Možnosti Chrome a Desired Capabilities. Ďalej sú uvedené kroky na získanie prístupu k rozšíreniu AdBlocker v prehliadači Chrome pomocou triedy Požadované schopnosti.
Krok 1) Pred použitím triedy Možnosti prehliadača Chrome musí byť v prehliadači Chrome nainštalované rozšírenie AdBlocker
Krok 2) Extrahujte súbor CRX zodpovedajúci rozšíreniu AdBlocker cez http://crxextractor.com/
Krok 3) Prejdite cestu k stiahnutému súboru CRX do triedy Možnosti prehliadača Chrome
Krok 4) Vytvorte inštanciu webového ovládača pomocou požadovanej triedy schopností a objektu chrome options
Príklad:
Nasledujúci príklad ukazuje, ako aktivovať rozšírenie blokovania reklám v prehliadači Chrome pomocou triedy Možnosti Chrome a požadovaných schopností.
Možnosti ChromeOptions = nové ChromeOptions ();options.addExtensions (nový súbor ("cesta k súboru CRX"));Možnosti DesiredCapabilities = nový DesiredCapabilities ();capabilities.setCapability (ChromeOptions.CAPABILITY, možnosti);Ovládač ChromeDriver = nový ChromeDriver (možnosti);
Extrahujte súbor CRX:
Nasledujúce kroky demonštrujú proces extrakcie súboru CRX pomocou nástroja Ad Blocker na webovej stránke - http://crxextractor.com/
Krok 1) Prejdite na stránku http://crxextractor.com/ a kliknite na tlačidlo Štart
Krok 2) Pod textové pole zadajte rozšírenie pre Chrome - URL blokovania reklám. Adresa URL pre Adblock v internetovom obchode Chrome je https://chrome.google.com/webstore/detail/adblock-%E2%80%94-best-ad-blocker/gighmmpiobklfepjocnamgkkbiglidom
a kliknite na ok
Krok 3) Po kliknutí na tlačidlo OK sa štítok tlačidla zmení na Získať .CRX, ako je uvedené nižšie. Kliknite na tlačidlo Získať .CRX, stiahne sa súbor CRX zodpovedajúci prípone
Krok 4) Uložte súbor na lokálny počítač, poznačte si uloženú cestu. Ďalším krokom je prejsť uloženú cestu do triedy Možnosti prehliadača Chrome
Vzorový kód:
- Reklamy sa zobrazia na adrese http://demo.guru99.com/, ako je uvedené nižšie
- Ak je v prehliadači Chrome povolené rozšírenie AdBlocker, reklamy v prehliadači Chrome by mali byť zakázané
balík adblock;import java.io.File;import org.openqa.selenium.chrome.ChromeDriver;importovať org.openqa.selenium.chrome.ChromeOptions;importovať org.openqa.selenium.remote.DesiredCapabilities;verejná trieda AdblockDemo {public static void main (String [] args) {System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Možnosti ChromeOptions = nové ChromeOptions ();options.addExtensions (nový súbor ("X: //extension_3_40_1_0.crx"));Možnosti DesiredCapabilities = nový DesiredCapabilities ();capabilities.setCapability (ChromeOptions.CAPABILITY, možnosti);options.merge (schopnosti);Ovládač ChromeDriver = nový ChromeDriver (možnosti);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();//driver.quit ();}}
Vysvetlenie kódu:
- Spočiatku musíte nastaviť cestu k súboru chromedriver.exe pomocou metódy set property, pretože na testovanie používate prehliadač Chrome.
- Musíte pridať cestu k súboru CRX a pridať metódu rozšírenia
- Potom musíte vytvoriť objekt požadovanej triedy schopností a odovzdať ho inštancii webového ovládača. Od verzie Selenium 3.8.1 je zastaraná trieda schopností ovládača a pred odovzdaním toho istého ako argumentu konštruktoru ovládača Chrome je potrebné zlúčiť objekt schopností s objektom Možnosti prehliadača Chrome
- Otvorte adresu URL - http://demo.guru99.com/test/simple_context_menu.html s povoleným rozšírením Ad Blocker
- Maximalizujte a zatvorte prehľadávač
POZNÁMKA: Rozšírenie AdBlocker v prehliadači Chrome povoľujeme pomocou automatizačného skriptu namiesto manuálneho povolenia rozšírenia Adblocker v prehliadači Chrome. Súbor CRX je spôsob prístupu k rozšíreniu blokovania reklám pomocou automatizačného skriptu
Výkon:
Prehliadač Chrome bude povolený s povoleným rozšírením AdBlocker, ako je uvedené nižšie, bez akýchkoľvek reklám
Možnosti prehliadača Chrome pre režim inkognito
Možnosti prehliadača Chrome je možné pre režim inkognito použiť pomocou preddefinovaného argumentu - inkognito .
Nižšie je uvedený ukážkový kód, ktorý umožňuje dosiahnuť to isté.
Vzorový kód:
test balenia;import java.io.File;import org.openqa.selenium.chrome.ChromeDriver;importovať org.openqa.selenium.chrome.ChromeOptions;importovať org.openqa.selenium.remote.DesiredCapabilities;verejná trieda inkognito {public static void main (String [] args) {// TODO Automaticky generovaný pahýl metódySystem.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Možnosti ChromeOptions = nové ChromeOptions ();options.addArguments ("- inkognito");Možnosti DesiredCapabilities = nový DesiredCapabilities ();capabilities.setCapability (ChromeOptions.CAPABILITY, možnosti);options.merge (schopnosti);Ovládač ChromeDriver = nový ChromeDriver (možnosti);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();//driver.quit ();}}
Vysvetlenie kódu :
- Spočiatku musíte nastaviť cestu k súboru chromedriver.exe pomocou metódy set property, pretože na testovanie používate prehliadač Chrome.
- Potom musíte vytvoriť objekt triedy Možnosti prehliadača Chrome a odovzdať ho inštancii webového ovládača. Pretože chceme otvoriť prehliadač Chrome v režime inkognito, je potrebné odovzdať argument -incognito do triedy Možnosti prehliadača Chrome.
- Ďalej vytvorte objekt triedy Desired Capabilities a zlúčte objekt triedy Desired Capabilities s objektom triedy Možnosti Chrome pomocou metódy zlúčenia
- Musíte vytvoriť objekt triedy ovládača Chrome a zadať objekt Možnosti prehliadača Chrome ako argument
- Nakoniec musíme odovzdať adresu URL - http://demo.guru99.com/test/simple_context_menu.html metóde driver.get
- Maximalizujte a zatvorte prehľadávač
Výkon:
Chromové okno prehliadača sa otvorí v režime inkognito, ako je uvedené nižšie
Možnosti prehliadača Chrome pre bezhlavý Chrome
Na pozadí beží bezhlavý prehliadač. Neuvidíte grafické používateľské rozhranie prehliadača ani na ňom vykonané operácie.
Možnosti prehliadača Chrome pre spustenie prehliadača Chrome v bezhlavom režime je možné vykonať pomocou preddefinovaných argumentov - bezhlavý .
Vzorový kód na jeho dosiahnutie je uvedený nižšie.
Príklad:
test balenia;import java.io.File;import org.openqa.selenium.chrome.ChromeDriver;importovať org.openqa.selenium.chrome.ChromeOptions;importovať org.openqa.selenium.remote.DesiredCapabilities;verejná trieda HeadlessModeDemo {public static void main (String [] args) {// TODO Automaticky generovaný pahýl metódySystem.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Možnosti ChromeOptions = nové ChromeOptions ();options.addArguments ("- bezhlavý");Možnosti DesiredCapabilities = nový DesiredCapabilities ();capabilities.setCapability (ChromeOptions.CAPABILITY, možnosti);options.merge (schopnosti);Ovládač ChromeDriver = nový ChromeDriver (možnosti);driver.get ("http://demo.guru99.com/");driver.manage (). window (). maximize ();Názov reťazca = driver.getTitle ();System.out.println ("Názov stránky: + názov);driver.quit ();}}
Vysvetlenie kódu :
- Spočiatku musíte nastaviť cestu k súboru chromedriver.exe pomocou metódy set property, pretože na testovanie používate prehliadač Chrome.
- Ďalej vytvorte objekt triedy Možnosti prehliadača Chrome a odovzdajte ho inštancii webového ovládača. Pretože chceme otvoriť prehliadač Chrome v bezhlavom režime, musíme odovzdať argument -headless do triedy Možnosti Chrome.
- Vytvorte objekt triedy Desired Capabilities a zlúčte objekt triedy Desired Capabilities s objektom triedy Možnosti Chrome pomocou metódy zlúčenia
- Vytvorte objekt triedy ovládača Chrome a objekt Chrome Options odošlite ako argument
- Nakoniec musíme odovzdať adresu URL - http://demo.guru99.com/ metóde driver.get
- Vytlačte si názov stránky a zatvorte prehliadač
Výkon
Prehliadač nebude pre vyššie uvedený kód viditeľný, pretože Chrome bude pracovať v režime bez hlavy. Názov stránky sa načíta a zobrazí sa nižšie.
Zhrnutie:
- Trieda možností prehliadača Chrome sa používa na manipuláciu s rôznymi vlastnosťami ovládača Chrome
- Trieda Desired Capabilities poskytuje množinu párov kľúč - hodnota na úpravu jednotlivých vlastností webového ovládača, ako je názov prehľadávača, platforma prehľadávača atď.
- Ak chcete manipulovať s ľubovoľnými rozšíreniami prehliadača Chrome, je potrebné súbor CRX zodpovedajúci príslušnej prípone extrahovať a pridať do triedy Možnosti prehliadača Chrome
- --incognito a -headless sú preddefinované argumenty poskytované triedou Možnosti prehliadača Chrome pre používanie prehliadača Chrome v režime inkognito a bez hlavy