Co je třída Možnosti Chrome?
Třída možností prohlížeče Chrome se používá k manipulaci s různými vlastnostmi ovladače Chrome. Třída možností prohlížeče Chrome se obecně používá ve spojení s požadovanými schopnostmi.
Příklad:
Níže uvedený příklad ukazuje způsob, jak otevřít prohlížeč Chrome v maximalizovaném režimu pomocí třídy ChromeOptions. Musíme předat instanci třídy ChromeOptions třídy do inicializace webového ovladače.
Možnosti ChromeOptions = nové ChromeOptions ()options.addArgument ("start-maximized");Ovladač ChromeDriver = nový ChromeDriver (možnosti);
Níže je uveden seznam dostupných a nejčastěji používaných argumentů pro třídu ChromeOptions
- start-maximalizized : Otevře Chrome v režimu maximalizace
- inkognito: Otevře Chrome v anonymním režimu
- bezhlavý: Otevře Chrome v bezhlavém režimu
- disable-extensions : Zakáže existující rozšíření v prohlížeči Chrome
- disable-popup-blocking : Zakáže vyskakovací okna zobrazená v prohlížeči Chrome
- make-default-browser: Nastaví Chrome jako výchozí prohlížeč
- version : Vytiskne verzi prohlížeče Chrome
- disable-infobars: Zabraňuje prohlížeči Chrome zobrazovat oznámení „Chrome je řízen automatizovaným softwarem
V tomto výukovém programu se naučíte
- Co je třída Možnosti Chrome?
- Třída požadovaných schopností
- Možnosti prohlížeče Chrome pro rozšíření Adblocker
- Možnosti prohlížeče Chrome pro režim inkognito
- Možnosti prohlížeče Chrome pro bezhlavý Chrome
Třída požadovaných schopností
Třída požadovaných schopností se používá k úpravě více vlastností webového ovladače. Třída Desired Capabilities poskytuje sadu párů klíč – hodnota ke změně jednotlivých vlastností webového ovladače, jako je název prohlížeče, platforma prohlížeče atd. Nejběžněji používanou metodou třídy Desired Capabilities je metoda setCapability. Desired Capabilities se nejčastěji používá u Selenium Grid, kde je třeba provést stejný testovací případ v různých prohlížečích.
Příklad:
Níže uvedený příklad ukazuje způsob, jak ve výchozím nastavení povolit prohlížeč Chrome přijímat certifikáty SSL na webech pomocí třídy Desired Capabilities.
// Vytvořte objekt požadované třídy schopností pomocí ovladače ChromeDesiredCapabilities SSLCertificate = DesiredCapabilities.chrome ();// Nastaví předdefinovanou schopnost - ACCEPT_SSL_CERTS na hodnotu trueSSLCertificate.setCapability (CapabilityType.ACCEPT_SSL_CERTS, true);// Otevřete novou instanci ovladače chrome s požadovanou schopnostíOvladač WebDriver = nový ChromeDriver (SSLCertificate);
Níže jsou uvedeny nejčastěji používané předdefinované typy schopností.
Název schopnosti | Popis |
ACCEPT_SSL_CERTS | Tato vlastnost říká prohlížeči, aby ve výchozím nastavení přijímal certifikáty SSL |
PLATFORM_NAME | Tato vlastnost se používá k nastavení platformy operačního systému používané k přístupu na web |
BROWSER_NAME | Tato vlastnost se používá k nastavení názvu prohlížeče pro instanci webového ovladače |
VERZE | Tato vlastnost se používá k nastavení verze prohlížeče |
Možnosti prohlížeče Chrome pro rozšíření Adblocker
Rozšíření Adblocker v prohlížeči Chrome lze zpracovat pomocí třídy Možnosti Chrome a Desired Capabilities. Níže jsou uvedeny kroky pro přístup k rozšíření AdBlocker v prohlížeči Chrome pomocí třídy Desired Capabilities.
Krok 1) Před použitím třídy Možnosti Chrome musí být v prohlížeči Chrome nainstalováno rozšíření AdBlocker
Krok 2) Extrahujte soubor CRX odpovídající příponě AdBlocker prostřednictvím http://crxextractor.com/
Krok 3) Předejte cestu staženého souboru CRX do třídy Možnosti Chrome
Krok 4) Vytvořte instanci webového ovladače pomocí požadované třídy schopností a objektu chrome options
Příklad:
Níže uvedený příklad ukazuje, jak aktivovat rozšíření blokování reklam v prohlížeči Chrome pomocí třídy Možnosti Chrome a požadovaných schopností.
Možnosti ChromeOptions = nové ChromeOptions ();options.addExtensions (nový soubor ("cesta k souboru CRX"));Možnosti DesiredCapabilities = nový DesiredCapabilities ();capabilities.setCapability (ChromeOptions.CAPABILITY, možnosti);Ovladač ChromeDriver = nový ChromeDriver (funkce);
Extrahujte soubor CRX:
Níže uvedené kroky ukazují proces extrakce souboru CRX prostřednictvím nástroje Ad Blocker prostřednictvím webové stránky - http://crxextractor.com/
Krok 1) Přejděte na stránku http://crxextractor.com/ a klikněte na tlačítko Start
Krok 2) Do textového pole zadejte příponu chrome - URL blokování reklam. URL pro Adblock v internetovém obchodě Chrome je https://chrome.google.com/webstore/detail/adblock-%E2%80%94-best-ad-blocker/gighmmpiobklfepjocnamgkkbiglidom
a klikněte na OK
Krok 3) Po kliknutí na tlačítko OK se štítek tlačítka změní na Získat .CRX, jak je uvedeno níže. Klikněte na tlačítko Získat .CRX, stáhne se soubor CRX odpovídající příponě
Krok 4) Uložte soubor na místní počítač, poznamenejte si uloženou cestu. Dalším krokem je předání uložené cesty do třídy Možnosti Chrome
Ukázkový kód:
- Reklamy uvidíte na adrese http://demo.guru99.com/, jak je uvedeno níže
- S povoleným rozšířením AdBlocker by měly být reklamy v prohlížeči Chrome deaktivovány
balíček adblock;import java.io.File;import org.openqa.selenium.chrome.ChromeDriver;importovat org.openqa.selenium.chrome.ChromeOptions;importovat org.openqa.selenium.remote.DesiredCapabilities;veřejná třída AdblockDemo {public static void main (String [] args) {System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Možnosti ChromeOptions = nové ChromeOptions ();options.addExtensions (nový soubor ("X: //extension_3_40_1_0.crx"));Možnosti DesiredCapabilities = nový DesiredCapabilities ();capabilities.setCapability (ChromeOptions.CAPABILITY, možnosti);options.merge (schopnosti);Ovladač ChromeDriver = nový ChromeDriver (možnosti);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();//driver.quit ();}}
Vysvětlení kódu:
- Zpočátku musíte nastavit cestu k souboru chromedriver.exe pomocí metody set property, protože k testování používáte prohlížeč Chrome
- Chcete-li přidat metodu rozšíření, musíte nastavit cestu k souboru CRX
- Poté musíte vytvořit objekt požadované třídy schopností a předat jej instanci webového ovladače. Od verze Selenium 3.8.1 je zastaralá třída schopností ovladačů a je třeba sloučit objekt schopností s objektem Možnosti Chrome, než předáte totéž jako argument konstruktoru ovladače Chrome
- Otevřete adresu URL - http://demo.guru99.com/test/simple_context_menu.html s povoleným rozšířením Ad Blocker
- Maximalizujte a zavřete prohlížeč
POZNÁMKA: Povolujeme rozšíření AdBlocker v prohlížeči Chrome pomocí automatizačního skriptu namísto ručního povolení rozšíření Adblocker v prohlížeči Chrome. Soubor CRX je způsob, jak získat přístup k rozšíření blokování reklam pomocí automatizačního skriptu
Výstup:
Prohlížeč Chrome bude povolen s povoleným rozšířením AdBlocker, jak je uvedeno níže, bez reklam
Možnosti prohlížeče Chrome pro režim inkognito
Možnosti prohlížeče Chrome lze v anonymním režimu použít pomocí předdefinovaného argumentu - inkognito .
Níže je ukázkový kód k dosažení stejného.
Ukázkový kód:
test balení;import java.io.File;import org.openqa.selenium.chrome.ChromeDriver;importovat org.openqa.selenium.chrome.ChromeOptions;importovat org.openqa.selenium.remote.DesiredCapabilities;veřejná třída Inkognito {public static void main (String [] args) {// TODO Automaticky generovaný útržek metodySystem.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);Ovladač ChromeDriver = nový ChromeDriver (možnosti);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();//driver.quit ();}}
Vysvětlení kódu :
- Zpočátku musíte nastavit cestu k souboru chromedriver.exe pomocí metody set property, protože k testování používáte prohlížeč Chrome
- Poté musíte vytvořit objekt třídy Možnosti prohlížeče Chrome a předat jej instanci webového ovladače. Protože chceme otevřít prohlížeč Chrome v anonymním režimu, musíte předat argument -incognito třídě Možnosti Chrome.
- Dále vytvořte objekt třídy Desired Capabilities a sloučte objekt třídy Desired Capabilities s objektem třídy Možnosti Chrome pomocí metody sloučení
- Musíte vytvořit objekt třídy ovladače Chrome a předat objekt Možnosti Chrome jako argument
- Nakonec musíme předat URL - http://demo.guru99.com/test/simple_context_menu.html metodě driver.get
- Maximalizujte a zavřete prohlížeč
Výstup:
Okno prohlížeče Chrome se otevře v anonymním režimu, jak je uvedeno níže
Možnosti prohlížeče Chrome pro bezhlavý Chrome
Bezhlavý prohlížeč běží na pozadí. Neuvidíte GUI prohlížeče ani na něm provedené operace.
Možnosti prohlížeče Chrome pro spuštění prohlížeče Chrome v režimu bez hlavy lze provést pomocí předdefinovaných argumentů - bez hlavy .
Ukázkový kód k jeho dosažení je uveden níže.
Příklad:
test balení;import java.io.File;import org.openqa.selenium.chrome.ChromeDriver;importovat org.openqa.selenium.chrome.ChromeOptions;importovat org.openqa.selenium.remote.DesiredCapabilities;veřejná třída HeadlessModeDemo {public static void main (String [] args) {// TODO Automaticky generovaný útržek metodySystem.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);Ovladač ChromeDriver = nový ChromeDriver (možnosti);driver.get ("http://demo.guru99.com/");driver.manage (). window (). maximize ();Název řetězce = driver.getTitle ();System.out.println ("Název stránky: + název);driver.quit ();}}
Vysvětlení kódu :
- Zpočátku musíte nastavit cestu k souboru chromedriver.exe pomocí metody set property, protože k testování používáte prohlížeč Chrome
- Dále vytvořte objekt třídy Možnosti Chrome a předejte jej instanci webového ovladače. Protože chceme otevřít prohlížeč Chrome v bezhlavém režimu, musíme předat argument -headless do třídy Možnosti Chrome.
- Vytvořte objekt třídy Desired Capabilities a sloučte objekt třídy Desired Capabilities s objektem třídy Možnosti Chrome pomocí metody sloučení
- Vytvořte objekt třídy ovladače Chrome a předejte objekt Možnosti Chrome jako argument
- Nakonec musíme předat URL - http://demo.guru99.com/ metodě driver.get
- Vytiskněte název stránky a zavřete prohlížeč
Výstup
Prohlížeč nebude pro výše uvedený kód viditelný, protože Chrome bude pracovat v režimu bez hlavy. Název stránky se načte a zobrazí se níže.
Souhrn:
- Třída možností prohlížeče Chrome se používá k manipulaci s různými vlastnostmi ovladače Chrome
- Třída Desired Capabilities poskytuje sadu párů klíč – hodnota pro úpravu jednotlivých vlastností webového ovladače, jako je název prohlížeče, platforma prohlížeče atd.
- Chcete-li manipulovat s libovolnými rozšířeními prohlížeče Chrome, je třeba soubor CRX odpovídající dané příponě extrahovat a přidat do třídy Možnosti prohlížeče Chrome
- --incognito a -headless jsou předdefinované argumenty poskytované třídou Možnosti Chrome pro používání prohlížeče Chrome v anonymním režimu a bezhlavém režimu