Kemampuan yang Diinginkan dalam Selenium webdriver
โก Ringkasan Cerdas
Kemampuan yang Diinginkan adalah Selenium Kelas yang menyimpan pengaturan browser, platform, dan perangkat sebagai pasangan kunci-nilai, memungkinkan satu rangkaian pengujian menargetkan banyak lingkungan di berbagai platform. Selenium Jaringan listrik, jaringan cloud, dan otomatisasi mobile.
Apa Kemampuan yang Diinginkan?
Kemampuan yang Diinginkan adalah sebuah kelas dalam Selenium digunakan untuk mengatur properti browser untuk melakukan pengujian lintas browser pada aplikasi web. Ini menyimpan kemampuan sebagai pasangan nilai kunci dan kemampuan ini digunakan untuk mengatur properti browser seperti nama browser, versi browser, jalur driver browser dalam sistem, dll. untuk menentukan perilaku browser pada waktu berjalan.
- Kemampuan yang diinginkan juga dapat digunakan untuk mengkonfigurasi instance driver Selenium Pengemudi Web.
- Kita dapat mengkonfigurasi contoh driver seperti FirefoxDriver, ChromeDriver, InternetExplorerDriver dengan menggunakan kemampuan yang diinginkan.
Catatan versi: Selenium 4 Menggantikan DesiredCapabilities dengan kelas Options browser โ ChromeOptions, FirefoxOptions, EdgeOptions, InternetExplorerOptions. Contoh-contoh di bawah ini mempertahankan sintaks aslinya.
Mengapa kita membutuhkan Kemampuan yang Diinginkan?
Kemampuan yang diinginkan dibutuhkan karena setiap pengujian skenario harus dijalankan pada beberapa lingkungan pengujian tertentu. Lingkungan pengujian dapat berupa browser web, Nomor WhatsApp perangkat, emulator seluler, simulator seluler, dll. Kelas Desired Capabilities membantu kita memberi tahu WebDriver, lingkungan mana yang akan kita gunakan dalam skrip pengujian kita.
Metode setCapability dari kelas DesiredCapabilities, yang dijelaskan di bagian selanjutnya dari halaman ini, dapat digunakan dalam Selenium Kisi-kisi. Digunakan untuk melakukan eksekusi paralel pada konfigurasi mesin yang berbeda.
Contoh: Kisi-kisi (ditunjukkan di bawah).
Ini digunakan untuk mengatur properti browser (Mis. Chrome, IE), Nama Platform (Mis. Linux, Windows) yang digunakan saat menjalankan Uji Kasus.
Dalam hal otomatisasi seluler, saat kami melakukan pengujian pada berbagai jenis perangkat seluler, Platform Seluler (mis. iOS, Android) Versi Platform (Mis. 3.x,4.x in Android) dapat diatur.
Contoh emulator di bawah ini menunjukkan platform yang digunakan yaitu Android dan versi platform yang digunakan yaitu Ice Cream Sandwich (4.x).
Kemampuan yang Diinginkan lebih berguna dalam kasus seperti:
- Dalam otomatisasi aplikasi seluler, properti browser dan properti perangkat dapat diatur.
- In Selenium Grid digunakan ketika kita ingin menjalankan kasus uji pada browser yang berbeda dengan sistem operasi dan versi yang berbeda.
Jenis Metode Kemampuan yang Diinginkan
Di sini kita akan melihat berbagai metode Desired Capabilities dan cara menggunakan salah satunya, yaitu metode setCapability().
#1) dapatkan Nama Peramban()
public java.lang.String getBrowserName()
#2) setelNama Peramban()
public void setBrowserName(java.lang.String browserName)
#3) dapatkanVersi()
public java.lang.String getVersion()
#4) setVersi()
public void setVersion(java.lang.String version)
#5) dapatkanPlatform()
public Platform getPlatform()
#6) setPlatform()
public Platform setPlatform()
#7) Metode getCapability()
Metode getCapability() dari kelas DesiredCapabilities dapat digunakan untuk mendapatkan kapabilitas yang sedang digunakan di sistem.
public java.lang.Object getCapability(java.lang.String capabilityName)
#8) Metode setCapability()
Metode setCapability() dari kelas Desired Capabilities digunakan untuk mengatur properti lingkungan pengujian seperti nama perangkat, nama dan versi OS, nama dan versi browser, jalur absolut aplikasi yang sedang diuji (file .apk dari aplikasi tersebut). Android aplikasi sedang diuji), Aktivitas aplikasi (in Android) dan appPackage (di dalam Java).
โmetode setCapabilityโ di Java memiliki deklarasi di bawah ini:
setCapability : public void setCapability(java.lang.String capabilityName,boolean value)
setCapability :public void setCapability(java.lang.String capabilityName,java.lang.String value)
setCapability :public void setCapability(java.lang.String capabilityName,Platform value)
setCapability :public void setCapability(java.lang.String key,java.lang.Object value)
Tetapkan Kemampuan di Selenium Example
Mari kita pertimbangkan contoh di mana kita ingin menjalankan Kasus Uji kita pada browser Internet Explorer untuk membuka situs web www.gmail.com menggunakan Selenium Pengemudi Web.
Berikut ini adalah kodenya.
import org.openqa.selenium.WebDriver; import org.openqa.selenium.ie.InternetExplorerDriver; public class IEtestforDesiredCapabilities { public static void main(String[] args) { WebDriver driver = new InternetExplorerDriver(); driver.manage().window().maximize(); driver.get("http://gmail.com"); driver.quit(); } }
Sekarang jalankan kode ini dari Eclipse dan periksa konsolnya.
Keluaran:
Kode di atas akan menampilkan kesalahan berikut saat dijalankan. Kesalahan terjadi karena jalur ke driver browser (IE dalam kasus di atas) belum diatur. Browser tidak dapat ditemukan oleh Selenium kode.
The path to the driver executable must be set by the webdriver.ie.driver system property; formore information, see http://code.google.com/p/selenium/wiki/InternetExplorerDriver. The latest version can be downloaded from http://code.google.com/p/selenium/downloads/list Dec 11, 201212:59:43PM org.openqa.selenium.ie.InternetExplorerDriverServer initializeLib WARNING: This method of starting the IE driver is deprecated and will be removed in selenium 2.26. Please download the IEDriverServer.exe from http://code.google.com/p/selenium/downloads/list and ensure that it is in your PATH.
Larutan:
Solusi untuk masalah di atas diberikan di bagian peringatan kesalahan itu sendiri.
- Unduh server mandiri Internet ExplorerDriver untuk 32bit atau 64bit.
- Simpan driver di lokasi yang sesuai di sistem.
- Tetapkan jalur untuk driver menggunakan metode System.setProperty. Metode ini digunakan untuk mengatur driver IE dengan properti webdriver. Ini membantu menemukan file executable driver yang tersimpan di lokasi sistem. (Contoh: โC:\IEDriverLocation\IEDriver.exeโ)
Catatan versi: Selenium Versi 4.6 dan yang lebih baru secara otomatis menyelesaikan masalah driver melalui Selenium Manajer, jadi System.setProperty bersifat opsional. Kode historis di bawah ini tidak berubah.
import org.openqa.selenium.WebDriver; import org.openqa.selenium.ie.InternetExplorerDriver; import org.openqa.selenium.remote.DesiredCapabilities; public class IEtestforDesiredCapabilities { public static void main(String[] args) { //it is used to define IE capability DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer(); capabilities.setCapability(CapabilityType.BROWSER_NAME, "IE"); capabilities.setCapability(InternetExplorerDriver. INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true); System.setProperty("webdriver.ie.driver", "C:\\IEDriverServer.exe"); //it is used to initialize the IE driver WebDriver driver = new InternetExplorerDriver(capabilities); driver.manage().window().maximize(); driver.get("http://gmail.com"); driver.quit(); } }
Code Penjelasan:
Pada kode di atas,
- Pernyataan impor mengimpor paket-paket yang dibutuhkan untuk Selenium WebDriver, paket-paket yang dibutuhkan untuk driver Internet Explorer, dan paket-paket untuk kemampuan yang diinginkan.
- setCapability mengambil berbagai kemampuan sebagai variabel masukan yang kemudian digunakan oleh driver web untuk meluncurkan aplikasi di lingkungan yang diinginkan.
- setProperty digunakan untuk mengatur jalur tempat driver berada. WebDriver kemudian akan menemukan driver yang dibutuhkan.
- Gmail Situs web dibuka di browser Internet Explorer dengan menggunakan metode โgetโ.
Keluaran:
Kasus uji pada browser Internet Explorer akan berjalan dengan sukses menggunakan Selenium Pengemudi Web.


