Chrome Seçenekleri & İstenen yetenekler: AdBlocker, Incognito, Headless

İçindekiler:

Anonim

Chrome Seçenekleri sınıfı nedir?

Chrome seçenekleri sınıfı, Chrome sürücüsünün çeşitli özelliklerini değiştirmek için kullanılır. Chrome seçenekleri sınıfı, genellikle İstenen Yetenekler ile birlikte kullanılır.

Misal:

Aşağıdaki örnek, ChromeOptions sınıfını kullanarak Chrome tarayıcısını maksimize edilmiş modda açmanın bir yolunu göstermektedir. ChromeOptions sınıfının bir örneğini web sürücüsü başlatmaya geçirmemiz gerekiyor.

ChromeOptions seçenekleri = yeni ChromeOptions ()options.addArgument ("maksimize edilmiş başlangıç");ChromeDriver sürücüsü = yeni ChromeDriver (seçenekler);

Aşağıda, ChromeOptions sınıfı için mevcut ve en sık kullanılan bağımsız değişkenlerin listesi verilmiştir

  • start-maximized : Chrome'u büyütme modunda açar
  • gizli mod : Chrome'u gizli modda açar
  • başsız: Chrome'u başsız modda açar
  • devre dışı bırakma uzantıları : Chrome tarayıcısında mevcut uzantıları devre dışı bırakır
  • devre dışı bırak-açılır-engelleme : Chrome tarayıcısında görüntülenen pop-up'ları devre dışı bırakır
  • make-default-browser: Chrome'u varsayılan tarayıcı yapar
  • sürüm : Chrome tarayıcı sürümünü yazdırır
  • devre dışı bırakma bilgi çubukları: Chrome'un "Chrome otomatik yazılım tarafından kontrol ediliyor" bildirimini görüntülemesini engeller

Bu eğitimde öğreneceksiniz

  • Chrome Seçenekleri sınıfı nedir?
  • İstenen Yetenekler sınıfı
  • Adblocker uzantısı için Chrome Seçenekleri
  • Gizli mod için Chrome Seçenekleri
  • Başsız Chrome için Chrome Seçenekleri

İstenen Yetenekler sınıfı

Web sürücüsünün birden çok özelliğini değiştirmek için istenen yetenekler sınıfı kullanılır. Desired Capabilities sınıfı, tarayıcı adı, tarayıcı platformu vb. Gibi web sürücüsünün bireysel özelliklerini değiştirmek için bir dizi anahtar-değer çifti sağlar. Desired Capabilities sınıfının en yaygın kullanılan yöntemi setCapability yöntemidir. Desired Capabilities, aynı test senaryosunun farklı tarayıcılarda yürütülmesi gereken Selenium Grid ile en sık kullanılır.

Misal:

Aşağıdaki örnek, Chrome tarayıcısının İstenen Yetenekler sınıfını kullanarak varsayılan olarak web sitelerinde SSL sertifikalarını kabul etmesini sağlamanın yolunu göstermektedir.

// Chrome sürücüsüyle istenen yetenekler sınıfında bir nesne oluşturunDesiredCapabilities SSLCertificate = DesiredCapabilities.chrome ();// Önceden tanımlanmış özelliği - ACCEPT_SSL_CERTS değerini true olarak ayarlayınSSLCertificate.setCapability (CapabilityType.ACCEPT_SSL_CERTS, doğru);// İstenilen yeteneklere sahip yeni bir krom sürücü örneği açınWebDriver sürücüsü = yeni ChromeDriver (SSLCertificate);

Aşağıda en sık kullanılan önceden tanımlanmış yetenek türleri bulunmaktadır.

Yetenek Adı Açıklama
ACCEPT_SSL_CERTS Bu özellik, tarayıcıya varsayılan olarak SSL Sertifikalarını kabul etmesini söyler
PLATFORM_NAME Bu özellik, web sitesine erişmek için kullanılan işletim sistemi platformunu ayarlamak için kullanılır.
BROWSER_NAME Bu özellik, bir web sürücüsü örneği için tarayıcı adını ayarlamak için kullanılır
SÜRÜM Tarayıcı sürümünü ayarlamak için kullanılan bu özellik

Adblocker uzantısı için Chrome Seçenekleri

Chrome tarayıcısının Adblocker uzantısı, Chrome Seçenekleri ve İstenen Yetenekler sınıfı kullanılarak kullanılabilir. Aşağıda, İstenen Yetenekler sınıfını kullanarak Chrome tarayıcısında AdBlocker uzantısına erişme adımları verilmiştir.

Adım 1) Chrome Seçenekleri sınıfını kullanmadan önce AdBlocker uzantısı Chrome tarayıcısına yüklenmelidir

Adım 2) http://crxextractor.com/ adresinden AdBlocker uzantısına karşılık gelen CRX Dosyasını çıkarın

Adım 3) İndirilen CRX Dosyası yolunu Chrome Seçenekleri sınıfına aktarın

Adım 4) İstenen özellikler sınıfını ve krom seçenekleri nesnesini kullanarak web sürücüsünü örnekleyin

Misal:

Aşağıdaki örnek, Chrome Seçenekleri ve İstenen Yetenekler sınıfını kullanarak Chrome tarayıcısında reklam engelleyici uzantısının nasıl etkinleştirileceğini gösterir.

ChromeOptions seçenekleri = yeni ChromeOptions ();options.addExtensions (yeni Dosya ("CRX Dosyasına Giden Yol"));DesiredCapabilities yetenekleri = yeni DesiredCapabilities ();yetenekler.setCapability (ChromeOptions.CAPABILITY, seçenekler);ChromeDriver sürücüsü = yeni ChromeDriver (yetenekler);

CRX Dosyasını Çıkarın:

Aşağıdaki adımlar, CRX Dosyasını web sitesi aracılığıyla Reklam Engelleyici aracılığıyla çıkarma işlemini göstermektedir - http://crxextractor.com/

Adım 1) http://crxextractor.com/ adresine gidin ve başlat düğmesine tıklayın

Adım 2) Metin kutusunun altındaki krom uzantısını - Reklam Engelleyici URL'sini girin. Chrome web mağazasındaki Adblock URL'si https://chrome.google.com/webstore/detail/adblock-%E2%80%94-best-ad-blocker/gighmmpiobklfepjocnamgkkbiglidom şeklindedir

ve tamam'a tıklayın

Adım 3) Tamam Düğmesine tıklandığında, düğmenin etiketi aşağıdaki gibi .CRX Al olarak değişecektir. CRX Al düğmesine tıklayın, uzantıya karşılık gelen CRX dosyası indirilecektir

Adım 4) Dosyayı yerel makineye kaydedin, kaydedilen yolu not edin. Bir sonraki adım, kaydedilen yolu Chrome Seçenekleri sınıfına iletmektir.

Basit kod:

  1. Http://demo.guru99.com/ adresinde aşağıdaki gibi reklamlar göreceksiniz

  1. Chrome tarayıcıda AdBlocker uzantısı etkinleştirildiğinde reklamlar devre dışı bırakılmalıdır
paket reklam bloğu;java.io.File içe aktarma;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.chrome.ChromeOptions;import org.openqa.selenium.remote.DesiredCapabilities;public class AdblockDemo {public static void main (String [] args) {System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");ChromeOptions seçenekleri = yeni ChromeOptions ();options.addExtensions (yeni Dosya ("X: //extension_3_40_1_0.crx"));DesiredCapabilities yetenekleri = yeni DesiredCapabilities ();yetenekler.setCapability (ChromeOptions.CAPABILITY, seçenekler);options.merge (yetenekler);ChromeDriver sürücüsü = yeni ChromeDriver (seçenekler);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();//driver.quit ();}}

Kod Açıklaması:

  1. Başlangıçta, test için Chrome Tarayıcıyı kullandığınızdan, set özelliği yöntemini kullanarak chromedriver.exe dosyasının yolunu ayarlamanız gerekir.
  2. Uzantı yöntemi eklemek için CRX Dosyasına giden yolu ayarlamanız gerekir
  3. Ardından, istenen yetenekler sınıfına sahip bir nesne oluşturmanız ve bunu web sürücüsü örneğine iletmeniz gerekir. Selenium 3.8.1 sürümünden, sürücü yetenekleri sınıfı kullanımdan kaldırılmıştır ve Chrome Sürücüsü yapıcısına bir bağımsız değişkenle aynı şeyi iletmeden önce yetenekler nesnesini Chrome Seçenekleri nesnesiyle birleştirmeniz gerekir
  4. URL'yi açın - http://demo.guru99.com/test/simple_context_menu.html, Reklam Engelleyici uzantısı etkinken
  5. Tarayıcıyı büyütün ve kapatın

NOT: Chrome tarayıcısında Adblocker uzantısını manuel olarak etkinleştirmek yerine, Chrome tarayıcısında Otomasyon komut dosyası aracılığıyla AdBlocker uzantısını etkinleştiriyoruz. CRX Dosyası, otomasyon komut dosyasını kullanarak reklam engelleyici uzantısına erişmenin bir yoludur

Çıktı:

Chrome tarayıcısı, aşağıdaki gibi herhangi bir reklam olmadan AdBlocker uzantısı etkinleştirilerek etkinleştirilecektir.

Gizli mod için Chrome Seçenekleri

- Krom Seçenekler önceden tanımlanmış argümanı kullanarak Gizli mod için kullanılabilecek gizli .

Aşağıda aynısını gerçekleştirmek için örnek kod verilmiştir.

Basit kod:

paket testi;java.io.File içe aktarma;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.chrome.ChromeOptions;import org.openqa.selenium.remote.DesiredCapabilities;public class Incognito {public static void main (String [] args) {// TODO Otomatik oluşturulan yöntem saplamasıSystem.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");ChromeOptions seçenekleri = yeni ChromeOptions ();options.addArguments ("- gizli");DesiredCapabilities yetenekleri = yeni DesiredCapabilities ();yetenekler.setCapability (ChromeOptions.CAPABILITY, seçenekler);options.merge (yetenekler);ChromeDriver sürücüsü = yeni ChromeDriver (seçenekler);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();//driver.quit ();}}

Kod Açıklaması :

  1. Başlangıçta, test için Chrome Tarayıcıyı kullandığınızdan, set özelliği yöntemini kullanarak chromedriver.exe dosyasının yolunu ayarlamanız gerekir.
  2. Ardından, Chrome Seçenekleri sınıfının bir nesnesini oluşturmanız ve bunu web sürücüsü örneğine iletmeniz gerekir. Chrome tarayıcıyı gizli modda açmak istediğimizden, -incognito bağımsız değişkenini Chrome Seçenekleri sınıfına iletmeniz gerekir.
  3. Ardından, Desired Capabilities sınıfının bir nesnesini oluşturun ve birleştirme yöntemini kullanarak Desired Capabilities sınıf nesnesini Chrome Options sınıf nesnesiyle birleştirin.
  4. Chrome Sürücüsü sınıfının bir nesnesini oluşturmanız ve Chrome Seçenekleri nesnesini bağımsız değişken olarak iletmeniz gerekir
  5. Son olarak, http://demo.guru99.com/test/simple_context_menu.html URL'sini driver.get yöntemine geçirmemiz gerekiyor
  6. Tarayıcıyı büyütün ve kapatın

Çıktı:

Chrome tarayıcı penceresi aşağıdaki gibi Gizli modda açılacaktır

Başsız Chrome için Chrome Seçenekleri

Arka planda Headless tarayıcı çalışır. Tarayıcı GUI'sini veya üzerinde çalıştırılan işlemleri görmeyeceksiniz.

Başsız modda Chrome tarayıcısını çalıştırmak için Chrome Seçenekleri, önceden tanımlanmış bağımsız değişkenler kullanılarak gerçekleştirilebilir - başsız .

Bunu gerçekleştirmek için örnek kod aşağıda belirtilmiştir.

Misal:

paket testi;java.io.File içe aktarma;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.chrome.ChromeOptions;import org.openqa.selenium.remote.DesiredCapabilities;public class HeadlessModeDemo {public static void main (String [] args) {// TODO Otomatik oluşturulan yöntem saplamasıSystem.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");ChromeOptions seçenekleri = yeni ChromeOptions ();options.addArguments ("- başsız");DesiredCapabilities yetenekleri = yeni DesiredCapabilities ();yetenekler.setCapability (ChromeOptions.CAPABILITY, seçenekler);options.merge (yetenekler);ChromeDriver sürücüsü = yeni ChromeDriver (seçenekler);driver.get ("http://demo.guru99.com/");driver.manage (). window (). maximize ();Dize başlığı = driver.getTitle ();System.out.println ("Sayfa Başlığı: + başlık);driver.quit ();}}

Kod Açıklaması :

  1. Başlangıçta, test için Chrome Tarayıcıyı kullandığınızdan, set özelliği yöntemini kullanarak chromedriver.exe dosyasının yolunu ayarlamanız gerekir.
  2. Ardından, Chrome Seçenekleri sınıfının bir nesnesini oluşturun ve bunu web sürücüsü örneğine aktarın. Başsız modda Chrome tarayıcısını açmak istediğimizden, -headless argümanını Chrome Seçenekleri sınıfına geçirmemiz gerekiyor.
  3. Desired Capabilities sınıfının bir nesnesini oluşturun ve birleştirme yöntemini kullanarak Desired Capabilities sınıf nesnesini Chrome Options sınıf nesnesiyle birleştirin
  4. Chrome Sürücüsü sınıfının bir nesnesini oluşturun ve Chrome Seçenekleri nesnesini bağımsız değişken olarak iletin
  5. Son olarak, http://demo.guru99.com/ URL'sini driver.get yöntemine geçirmemiz gerekiyor
  6. Sayfa başlığını yazdırın ve tarayıcıyı kapatın

Çıktı

Chrome, Başsız modda çalışacağından, tarayıcı yukarıdaki kod için görünmeyecektir. Sayfa başlığı aşağıdaki gibi alınacak ve görüntülenecektir.

Özet:

  • Chrome seçenekleri sınıfı, Chrome sürücüsünün çeşitli özelliklerini değiştirmek için kullanılır
  • Desired Capabilities sınıfı, tarayıcı adı, tarayıcı platformu vb. Gibi web sürücüsünün bireysel özelliklerini değiştirmek için bir dizi anahtar-değer çifti sağlar.
  • Chrome tarayıcısının herhangi bir uzantısını değiştirmek için, uzantıya karşılık gelen CRX Dosyası çıkarılmalı ve Chrome Seçenekleri sınıfına eklenmelidir.
  • --incognito ve -headless, Chrome tarayıcıyı gizli modda ve başsız modda kullanmak için Chrome Options sınıfı tarafından sağlanan önceden tanımlanmış bağımsız değişkenlerdir