Ce este clasa Chrome Options?
Clasa de opțiuni Chrome este utilizată pentru a manipula diferite proprietăți ale driverului Chrome. Clasa de opțiuni Chrome este utilizată în general împreună cu funcțiile dorite.
Exemplu:
Exemplul de mai jos prezintă o modalitate de a deschide browserul Chrome în modul maximizat utilizând clasa ChromeOptions. Trebuie să trecem o instanță a clasei ChromeOptions la inițializarea driverului web.
Opțiuni ChromeOptions = ChromeOptions noi ()options.addArgument („maximizat la început”);Driver ChromeDriver = ChromeDriver nou (opțiuni);
Mai jos este lista argumentelor disponibile și cele mai frecvent utilizate pentru clasa ChromeOptions
- start-maximized : Deschide Chrome în modul maximize
- incognito: deschide Chrome în modul incognito
- fără cap: deschide Chrome în modul fără cap
- disable-extensions : dezactivează extensiile existente în browserul Chrome
- disable-popup-blocking : dezactivează ferestrele pop-up afișate în browserul Chrome
- make-default-browser: face browserul Chrome prestabilit
- versiune : imprimă versiunea browserului Chrome
- disable-infobars: împiedică Chrome să afișeze notificarea „Chrome este controlat de software automat
În acest tutorial, veți învăța
- Ce este clasa Chrome Options?
- Clasa de capacități dorite
- Opțiuni Chrome pentru extensia Adblocker
- Opțiuni Chrome pentru modul incognito
- Opțiuni Chrome pentru Chrome fără cap
Clasa de capacități dorite
Clasa de capacități dorită este utilizată pentru a modifica mai multe proprietăți ale driverului web. Clasa Capabilități dorite oferă un set de perechi cheie-valoare pentru a modifica proprietățile individuale ale driverului web, cum ar fi numele browserului, platforma browserului, etc. Metoda cea mai frecvent utilizată a clasei Capabilități dorite este metoda setCapability. Capabilitățile dorite este cel mai frecvent utilizat cu Selenium Grid, unde același caz de testare trebuie executat pe diferite browsere.
Exemplu:
Exemplul de mai jos prezintă modul de a permite browserului Chrome să accepte în mod implicit certificate SSL pe site-uri web utilizând clasa Capabilități dorite.
// Creați un obiect din clasa de capacități dorită cu driverul ChromeDesiredCapabilities SSLCertificate = DesiredCapabilities.chrome ();// Setați capacitatea predefinită - valoarea ACCEPT_SSL_CERTS la adevăratSSLCertificate.setCapability (CapabilityType.ACCEPT_SSL_CERTS, adevărat);// Deschideți o nouă instanță a driverului Chrome cu capacitatea dorităDriver WebDriver = nou ChromeDriver (SSLCertificate);
Mai jos sunt cele mai frecvent utilizate tipuri de capacități predefinite.
Numele capacității | Descriere |
ACCEPT_SSL_CERTS | Această proprietate îi spune browserului să accepte în mod implicit certificate SSL |
PLATFORM_NAME | Această proprietate este utilizată pentru a seta platforma sistemului de operare utilizată pentru a accesa site-ul web |
BROWSER_NAME | Această proprietate este utilizată pentru a seta numele browserului pentru o instanță de driver web |
VERSIUNE | Această proprietate este utilizată pentru a seta versiunea browserului |
Opțiuni Chrome pentru extensia Adblocker
Extensia Adblocker a browserului Chrome poate fi gestionată folosind opțiunile Chrome și clasa Capabilități dorite. Mai jos sunt pașii pentru a accesa extensia AdBlocker pe browserul Chrome utilizând clasa Capabilități dorite.
Pasul 1) Extensia AdBlocker trebuie instalată pe browserul Chrome înainte de a utiliza clasa Opțiuni Chrome
Pasul 2) Extrageți fișierul CRX corespunzător extensiei AdBlocker prin http://crxextractor.com/
Pasul 3) Treceți calea fișierului CRX descărcat la clasa Opțiuni Chrome
Pasul 4) Instantați driverul web folosind clasa de capacități dorită și obiectul cu opțiuni crom
Exemplu:
Exemplul de mai jos demonstrează cum se activează extensia de blocare a anunțurilor în browserul Chrome utilizând opțiunile Chrome și clasa Capabilități dorite.
Opțiuni ChromeOptions = new ChromeOptions ();options.addExtensions (fișier nou („Calea către fișierul CRX”));Capabilități DesiredCapabilities = new DesiredCapabilities ();powers.setCapability (ChromeOptions.CAPABILITY, opțiuni);Driver ChromeDriver = nou ChromeDriver (capabilități);
Extrageți fișierul CRX:
Pașii de mai jos demonstrează procesul de extragere a fișierului CRX prin Ad Blocker prin intermediul site-ului web - http://crxextractor.com/
Pasul 1) Accesați http://crxextractor.com/ și faceți clic pe butonul Start
Pasul 2) Introduceți extensia Chrome - Ad Blocker URL sub caseta text. Adresa URL pentru Adblock în magazinul web Chrome este https://chrome.google.com/webstore/detail/adblock-%E2%80%94-best-ad-blocker/gighmmpiobklfepjocnamgkkbiglidom
și faceți clic pe OK
Pasul 3) Dacă faceți clic pe butonul OK, eticheta butonului se va schimba în Obțineți .CRX ca mai jos. Faceți clic pe butonul Obțineți .CRX, fișierul CRX corespunzător extensiei va fi descărcat
Pasul 4) Salvați fișierul pe mașina locală, notați calea salvată. Următorul pas este de a trece calea salvată la clasa Opțiuni Chrome
Cod simplu:
- Veți vedea anunțuri la http://demo.guru99.com/ după cum urmează
- Cu extensia AdBlocker activată pe browserul Chrome, anunțurile ar trebui să fie dezactivate
pachet adblock;import java.io.File;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.chrome.ChromeOptions;import org.openqa.selenium.remote.DesiredCapabilities;public class AdblockDemo {public static main main (String [] args) {System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Opțiuni ChromeOptions = new ChromeOptions ();options.addExtensions (fișier nou („X: //extension_3_40_1_0.crx”));Capabilități DesiredCapabilities = new DesiredCapabilities ();powers.setCapability (ChromeOptions.CAPABILITY, opțiuni);options.merge (capabilități);Driver ChromeDriver = ChromeDriver nou (opțiuni);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();//driver.quit ();}}
Explicatie cod:
- Inițial, trebuie să setați calea către fișierul chromedriver.exe folosind metoda set property, deoarece utilizați browserul Chrome pentru testare
- Trebuie să setați calea către fișierul CRX pentru a adăuga metoda extensiilor
- Apoi, trebuie să creați un obiect din clasa de capabilități dorită și să îl transmiteți instanței driverului web. Din versiunea Selenium 3.8.1, clasa capabilităților driverului este depreciată și trebuie să îmbinați obiectul capabilităților cu obiectul Opțiuni Chrome înainte de a trece același lucru ca un argument constructorului Driverului Chrome.
- Deschideți adresa URL - http://demo.guru99.com/test/simple_context_menu.html cu extensia Ad Blocker activată
- Maximizați și închideți browserul
NOTĂ: Activăm extensia AdBlocker în browserul Chrome prin script de automatizare în loc să activăm manual extensia Adblocker în browserul Chrome. Fișierul CRX este o modalitate de a accesa extensia de blocare a anunțurilor folosind scriptul de automatizare
Ieșire:
Browserul Chrome va fi activat cu extensia AdBlocker activată ca mai jos, fără reclame
Opțiuni Chrome pentru modul incognito
Opțiunile Chrome pot fi utilizate pentru modul incognito utilizând argumentul predefinit - incognito .
Mai jos este exemplul de cod pentru a realiza același lucru.
Cod simplu:
test pachet;import java.io.File;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.chrome.ChromeOptions;import org.openqa.selenium.remote.DesiredCapabilities;public class Incognito {public static main main (String [] args) {// TODO Metoda generată automatSystem.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Opțiuni ChromeOptions = new ChromeOptions ();options.addArguments ("- incognito");Capabilități DesiredCapabilities = new DesiredCapabilities ();powers.setCapability (ChromeOptions.CAPABILITY, opțiuni);options.merge (capabilități);Driver ChromeDriver = ChromeDriver nou (opțiuni);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();//driver.quit ();}}
Explicatie cod :
- Inițial, trebuie să setați calea către fișierul chromedriver.exe folosind metoda set property, deoarece utilizați browserul Chrome pentru testare
- Apoi, trebuie să creați un obiect din clasa Opțiuni Chrome și să îl transmiteți instanței driverului web. Întrucât dorim să deschidem browserul Chrome în modul incognito, trebuie să treceți argumentul -incognito la clasa Opțiuni Chrome.
- Apoi, creați un obiect din clasa Capabilități dorite și combinați obiectul clasei Capabilități dorite cu obiectul clasei Opțiuni Chrome folosind metoda de îmbinare
- Trebuie să creați un obiect din clasa Driverului Chrome și să treceți obiectul Opțiuni Chrome ca argument
- În cele din urmă, trebuie să trecem adresa URL - http://demo.guru99.com/test/simple_context_menu.html la metoda driver.get
- Maximizați și închideți browserul
Ieșire:
Fereastra browserului Chrome va fi deschisă în modul incognito, după cum se arată mai jos
Opțiuni Chrome pentru Chrome fără cap
Un browser fără cap rulează în fundal. Nu veți vedea GUI-ul browserului sau operațiunile efectuate pe acesta.
Opțiunile Chrome pentru rularea browserului Chrome în modul fără cap pot fi realizate utilizând argumentele predefinite - fără cap .
Exemplul de cod pentru realizarea acestuia este menționat mai jos.
Exemplu:
test pachet;import java.io.File;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.chrome.ChromeOptions;import org.openqa.selenium.remote.DesiredCapabilities;clasă publică HeadlessModeDemo {public static main main (String [] args) {// TODO Metoda generată automatSystem.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Opțiuni ChromeOptions = new ChromeOptions ();options.addArguments ("- fără cap");Capabilități DesiredCapabilities = new DesiredCapabilities ();powers.setCapability (ChromeOptions.CAPABILITY, opțiuni);options.merge (capabilități);Driver ChromeDriver = ChromeDriver nou (opțiuni);driver.get ("http://demo.guru99.com/");driver.manage (). window (). maximize ();String title = driver.getTitle ();System.out.println ("Titlu pagină: + titlu);driver.quit ();}}
Explicatie cod :
- Inițial, trebuie să setați calea către fișierul chromedriver.exe folosind metoda set property, deoarece utilizați browserul Chrome pentru testare
- Apoi, creați un obiect din clasa Opțiuni Chrome și treceți-l instanței driverului web. Întrucât dorim să deschidem browserul Chrome în modul fără cap, trebuie să trecem argumentul fără cap la clasa Opțiuni Chrome.
- Creați un obiect din clasa Capabilități dorite și combinați obiectul clasei Capabilități dorite cu obiectul clasei Opțiuni Chrome folosind metoda de îmbinare
- Creați un obiect din clasa Driverului Chrome și treceți obiectul Opțiuni Chrome ca argument
- În cele din urmă, trebuie să trecem adresa URL - http://demo.guru99.com/ la metoda driver.get
- Imprimați titlul paginii și închideți browserul
Ieșire
Browserul nu va fi vizibil pentru codul de mai sus, deoarece Chrome va funcționa în modul Headless. Titlul paginii va fi preluat și afișat ca mai jos.
Rezumat:
- Clasa de opțiuni Chrome este utilizată pentru a manipula diferite proprietăți ale driverului Chrome
- Clasa Capabilități dorite oferă un set de perechi cheie-valoare pentru a modifica proprietățile individuale ale driverului web, cum ar fi numele browserului, platforma browserului etc.
- Pentru a manipula orice extensii ale browserului Chrome, fișierul CRX corespunzător extensiei trebuie extras și trebuie adăugat la clasa Opțiuni Chrome
- --incognito și -headless sunt argumente predefinite furnizate de clasa Chrome Options pentru utilizarea browserului Chrome în modul incognito și în modul fără cap