Apa itu kelas Opsi Chrome?
Kelas opsi Chrome digunakan untuk memanipulasi berbagai properti driver Chrome. Kelas opsi Chrome umumnya digunakan bersama dengan Kemampuan yang Diinginkan.
Contoh:
Contoh di bawah ini menunjukkan cara untuk membuka browser Chrome dalam mode dimaksimalkan menggunakan kelas ChromeOptions. Kita perlu meneruskan instance kelas ChromeOptions ke inisialisasi driver web.
Opsi ChromeOptions = new ChromeOptions ()options.addArgument ("mulai-dimaksimalkan");Driver ChromeDriver = ChromeDriver baru (opsi);
Di bawah ini adalah daftar argumen yang tersedia dan paling umum digunakan untuk kelas ChromeOptions
- mulai dimaksimalkan : Membuka Chrome dalam mode maksimalkan
- penyamaran: Membuka Chrome dalam mode penyamaran
- headless: Membuka Chrome dalam mode tanpa kepala
- nonaktifkan-ekstensi : Menonaktifkan ekstensi yang ada di browser Chrome
- nonaktifkan-pemblokiran pop-up: Menonaktifkan pop-up yang ditampilkan di browser Chrome
- make-default-browser: Menjadikan Chrome sebagai browser default
- versi : Mencetak versi browser chrome
- disable-infobars: Mencegah Chrome menampilkan pemberitahuan 'Chrome sedang dikontrol oleh software otomatis
Dalam tutorial ini, Anda akan belajar
- Apa itu kelas Opsi Chrome?
- Kelas Kemampuan yang Diinginkan
- Opsi Chrome untuk ekstensi Adblocker
- Opsi Chrome untuk mode Penyamaran
- Opsi Chrome untuk Headless Chrome
Kelas Kemampuan yang Diinginkan
Kelas kemampuan yang diinginkan digunakan untuk memodifikasi beberapa properti driver web. Kelas Desired Capabilities menyediakan sekumpulan key-value pair untuk mengubah properti individual driver web seperti nama browser, platform browser, dll. Metode yang paling umum digunakan dari kelas Desired Capabilities adalah metode setCapability. Kemampuan yang Diinginkan paling sering digunakan dengan Selenium Grid di mana kasus uji yang sama perlu dijalankan pada browser yang berbeda.
Contoh:
Contoh di bawah ini menunjukkan cara mengaktifkan browser chrome untuk menerima sertifikat SSL di situs web secara default menggunakan kelas Kemampuan yang Diinginkan.
// Buat objek dengan kelas kemampuan yang diinginkan dengan driver ChromeDesiredCapabilities SSLCertificate = DesiredCapabilities.chrome ();// Setel kemampuan yang ditentukan sebelumnya - nilai ACCEPT_SSL_CERTS ke trueSSLCertificate.setCapability (CapabilityType.ACCEPT_SSL_CERTS, benar);// Buka contoh baru driver chrome dengan kemampuan yang diinginkanDriver WebDriver = ChromeDriver baru (Sertifikat SSL);
Di bawah ini adalah jenis kemampuan yang telah ditentukan sebelumnya yang paling umum digunakan.
Nama Kemampuan | Deskripsi |
ACCEPT_SSL_CERTS | Properti ini memberi tahu browser untuk menerima Sertifikat SSL secara default |
PLATFORM_NAME | Properti ini digunakan untuk mengatur platform sistem operasi yang digunakan untuk mengakses situs web |
BROWSER_NAME | Properti ini digunakan untuk menyetel nama browser untuk instance driver web |
VERSI: KAPAN | Properti ini digunakan untuk menyetel versi browser |
Opsi Chrome untuk ekstensi Adblocker
Ekstensi Adblocker dari browser Chrome dapat ditangani menggunakan opsi Chrome dan kelas Kemampuan yang Diinginkan. Berikut adalah langkah-langkah untuk mengakses ekstensi AdBlocker di browser Chrome menggunakan kelas Kemampuan yang Diinginkan.
Langkah 1) Ekstensi AdBlocker harus diinstal pada browser Chrome sebelum menggunakan kelas Opsi Chrome
Langkah 2) Ekstrak File CRX yang sesuai dengan ekstensi AdBlocker melalui http://crxextractor.com/
Langkah 3) Teruskan jalur File CRX yang diunduh ke kelas Opsi Chrome
Langkah 4) Buat instance web driver menggunakan kelas kemampuan yang diinginkan dan objek opsi chrome
Contoh:
Contoh di bawah ini menunjukkan cara mengaktifkan ekstensi pemblokir iklan di browser Chrome menggunakan kelas Opsi Chrome dan Kemampuan yang Diinginkan.
Opsi ChromeOptions = new ChromeOptions ();options.addExtensions (File baru ("Path to CRX File"));Kemampuan DesiredCapabilities = DesiredCapabilities baru ();kapabilitas.setCapability (ChromeOptions.CAPABILITY, opsi);Driver ChromeDriver = ChromeDriver baru (kemampuan);
Ekstrak File CRX:
Langkah-langkah di bawah ini menunjukkan proses mengekstrak File CRX melalui Pemblokir Iklan melalui situs web - http://crxextractor.com/
Langkah 1) Buka http://crxextractor.com/ dan klik tombol start
Langkah 2) Masukkan ekstensi chrome - URL Pemblokir Iklan di bawah kotak teks. URL untuk Adblock di toko web Chrome adalah https://chrome.google.com/webstore/detail/adblock-%E2%80%94-best-ad-blocker/gighmmpiobklfepjocnamgkkbiglidom
dan klik ok
Langkah 3) Saat mengklik Tombol OK, label tombol akan berubah menjadi Get .CRX seperti di bawah ini. Klik tombol Get .CRX, file CRX yang sesuai dengan ekstensi akan diunduh
Langkah 4) Simpan file ke mesin lokal, catat jalur yang disimpan. Langkah selanjutnya adalah meneruskan jalur yang disimpan ke kelas Opsi Chrome
Kode sampel:
- Anda akan melihat iklan di http://demo.guru99.com/ seperti di bawah ini
- Dengan mengaktifkan ekstensi AdBlocker di browser Chrome, iklan harus dinonaktifkan
paket adblock;impor java.io.File;impor org.openqa.selenium.chrome.ChromeDriver;impor org.openqa.selenium.chrome.ChromeOptions;impor org.openqa.selenium.remote.DesiredCapabilities;public class AdblockDemo {public static void main (String [] args) {System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Opsi ChromeOptions = new ChromeOptions ();options.addExtensions (File baru ("X: //extension_3_40_1_0.crx"));Kemampuan DesiredCapabilities = DesiredCapabilities baru ();kapabilitas.setCapability (ChromeOptions.CAPABILITY, opsi);options.merge (kemampuan);Driver ChromeDriver = ChromeDriver baru (opsi);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maksimalkan ();//driver.quit ();}}
Penjelasan Kode:
- Awalnya, Anda perlu menyetel jalur ke file chromedriver.exe menggunakan metode properti set karena Anda menggunakan Browser Chrome untuk pengujian
- Anda perlu mengatur jalur ke File CRX untuk menambahkan metode ekstensi
- Kemudian Anda perlu membuat objek kelas kemampuan yang diinginkan dan meneruskannya ke instance driver web. Dari versi Selenium 3.8.1, kelas kemampuan driver tidak digunakan lagi dan Anda perlu menggabungkan objek kemampuan dengan objek Opsi Chrome sebelum meneruskan hal yang sama sebagai argumen ke konstruktor Driver Chrome
- Buka URL - http://demo.guru99.com/test/simple_context_menu.html dengan mengaktifkan ekstensi Pemblokir Iklan
- Maksimalkan dan tutup browser
CATATAN: Kami mengaktifkan ekstensi AdBlocker di browser Chrome melalui skrip otomatisasi alih-alih mengaktifkan ekstensi Adblocker secara manual di browser Chrome. CRX File adalah cara untuk mengakses ekstensi pemblokir iklan menggunakan skrip otomatisasi
Keluaran:
Browser Chrome akan diaktifkan dengan ekstensi AdBlocker diaktifkan seperti di bawah ini tanpa iklan
Opsi Chrome untuk mode Penyamaran
Opsi Chrome dapat digunakan untuk mode penyamaran dengan menggunakan argumen yang telah ditentukan sebelumnya - penyamaran .
Di bawah ini adalah contoh kode untuk mencapai hal yang sama.
Kode sampel:
uji paket;impor java.io.File;impor org.openqa.selenium.chrome.ChromeDriver;impor org.openqa.selenium.chrome.ChromeOptions;impor org.openqa.selenium.remote.DesiredCapabilities;public class Incognito {public static void main (String [] args) {// TODO Rintisan metode yang dibuat secara otomatisSystem.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Opsi ChromeOptions = new ChromeOptions ();options.addArguments ("- incognito");Kemampuan DesiredCapabilities = DesiredCapabilities baru ();kapabilitas.setCapability (ChromeOptions.CAPABILITY, opsi);options.merge (kemampuan);Driver ChromeDriver = ChromeDriver baru (opsi);driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maksimalkan ();//driver.quit ();}}
Penjelasan Kode :
- Awalnya, Anda perlu menyetel jalur ke file chromedriver.exe menggunakan metode properti set karena Anda menggunakan Browser Chrome untuk pengujian
- Kemudian Anda perlu membuat objek kelas Opsi Chrome dan meneruskannya ke instance driver web. Karena kami ingin membuka peramban Chrome dalam mode penyamaran, Anda perlu meneruskan argumen-penyamaran ke kelas Opsi Chrome.
- Selanjutnya, buat objek kelas Kemampuan yang Diinginkan dan gabungkan objek kelas Kemampuan yang Diinginkan dengan objek kelas Opsi Chrome menggunakan metode penggabungan
- Anda perlu membuat objek kelas Driver Chrome dan meneruskan objek Opsi Chrome sebagai argumen
- Terakhir, kita perlu meneruskan URL - http://demo.guru99.com/test/simple_context_menu.html ke metode driver.get
- Maksimalkan dan tutup browser
Keluaran:
Jendela browser chrome akan dibuka dalam mode Penyamaran seperti di bawah ini
Opsi Chrome untuk Headless Chrome
Browser tanpa kepala berjalan di latar belakang. Anda tidak akan melihat GUI browser atau operasi yang dioperasikan di atasnya.
Opsi Chrome untuk menjalankan browser Chrome dalam mode headless dapat dilakukan dengan menggunakan argumen yang telah ditentukan - headless .
Kode contoh untuk mencapainya disebutkan di bawah ini.
Contoh:
uji paket;impor java.io.File;impor org.openqa.selenium.chrome.ChromeDriver;impor org.openqa.selenium.chrome.ChromeOptions;impor org.openqa.selenium.remote.DesiredCapabilities;public class HeadlessModeDemo {public static void main (String [] args) {// TODO Rintisan metode yang dibuat secara otomatisSystem.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");Opsi ChromeOptions = new ChromeOptions ();options.addArguments ("- headless");Kemampuan DesiredCapabilities = DesiredCapabilities baru ();kapabilitas.setCapability (ChromeOptions.CAPABILITY, opsi);options.merge (kemampuan);Driver ChromeDriver = ChromeDriver baru (opsi);driver.get ("http://demo.guru99.com/");driver.manage (). window (). maksimalkan ();Judul string = driver.getTitle ();System.out.println ("Judul Halaman: + judul);driver.quit ();}}
Penjelasan Kode :
- Awalnya, Anda perlu menyetel jalur ke file chromedriver.exe menggunakan metode properti set karena Anda menggunakan Browser Chrome untuk pengujian
- Selanjutnya, buat objek kelas Opsi Chrome dan teruskan ke instance driver web. Karena kita ingin membuka browser Chrome dalam mode headless, kita perlu meneruskan argumen -headless ke kelas Opsi Chrome.
- Buat objek kelas Kemampuan yang Diinginkan dan gabungkan objek kelas Kemampuan yang Diinginkan dengan objek kelas Opsi Chrome menggunakan metode penggabungan
- Buat objek kelas Driver Chrome dan teruskan objek Opsi Chrome sebagai argumen
- Terakhir, kita perlu meneruskan URL - http://demo.guru99.com/ ke metode driver.get
- Cetak judul halaman dan tutup browser
Keluaran
Browser tidak akan terlihat untuk kode di atas karena Chrome akan bekerja dalam mode Tanpa Kepala. Judul halaman akan diambil dan ditampilkan seperti di bawah ini.
Ringkasan:
- Kelas opsi Chrome digunakan untuk memanipulasi berbagai properti driver Chrome
- Kelas Kemampuan yang Diinginkan menyediakan sekumpulan pasangan nilai kunci untuk mengubah properti individual driver web seperti nama browser, platform browser, dll.
- Untuk memanipulasi ekstensi apa pun dari browser Chrome, File CRX yang sesuai dengan ekstensi harus diekstrak dan harus ditambahkan ke kelas Opsi Chrome
- --incognito dan -headless adalah argumen yang telah ditentukan sebelumnya yang disediakan oleh kelas Opsi Chrome untuk menggunakan browser Chrome dalam mode penyamaran dan mode tanpa kepala