Apa itu Kelas Tindakan di Selenium & Aplikasinya?
Diterbitkan: 2021-05-19Kelas Tindakan di Selenium adalah fitur bawaan yang ditawarkan oleh Selenium untuk mengelola acara keyboard dan mouse. Itu dapat mengelola beberapa operasi dan acara seperti tombol kontrol, seret dan lepas, dan banyak lagi. Operasi Kelas Tindakan diimplementasikan menggunakan fitur API interaksi pengguna tingkat lanjut dari Selenium Webdriver.
Daftar isi
Acara Keyboard dan Mouse yang umum digunakan
Kejadian keyboard dan mouse khusus ditangani menggunakan API Interaksi Pengguna Tingkat Lanjut. API ini berisi kelas Tindakan dan Tindakan yang diperlukan saat menjalankan peristiwa ini. Diberikan di bawah ini adalah acara keyboard dan mouse yang umum digunakan yang disediakan di kelas Action.
metode | Keterangan |
Klik Dan Tahan() | Untuk mengklik tanpa melepaskan di lokasi mouse saat ini. |
konteks-klik() | Melakukan klik konteks (Tindakan mouse klik kanan) di lokasi mouse saat ini |
klik dua kali() | Melakukan tindakan klik dua kali di lokasi mouse saat ini |
seret dan lepas (sumber, target) | Melakukan operasi klik dan tahan di lokasi elemen sumber, lalu pindah ke lokasi elemen target dan lepaskan mouse. Parameter: source-element untuk meniru event button-down. Elemen target untuk menggerakkan dan melepaskan mouse |
dragAnd DropBy (sumber, x-offset, y-offset) | Melakukan klik-dan-tahan di lokasi elemen sumber, bergerak dengan offset tertentu dan kemudian melepaskan mouse. Parameter: source-element untuk meniru event button-down. xOffset- untuk menentukan offset gerakan horizontal. yOffset- untuk menentukan offset gerakan vertikal. |
keyDown(pengubah_key) | Melakukan acara penekanan tombol pengubah. Tidak melepaskan kunci pengubah dengan interaksi berikutnya dengan asumsi tombol itu ditekan. Parameter: modifier_key untuk mewakili salah satu kunci pengubah, seperti Keys.SHIFT, Keys.ALT, atau Keys.CONTROL. |
tombol Atas(pengubah_key) | Melakukan pelepasan kunci. Parameter: modifier_key untuk mewakili salah satu kunci pengubah, seperti Keys.SHIFT, Keys.ALT, atau Keys.CONTROL. |
moveByOffset(x-offset, y-offset) | Memindahkan mouse dari posisi saat ini dengan offset yang ditentukan. Parameter: x-offset untuk menentukan offset horizontal. Nilai negatif berarti mouse bergerak ke kiri. y-offset untuk menentukan offset vertikal. Nilai negatif berarti mouse bergerak ke bawah. |
pindahToElement(toElement) | Memindahkan mouse dari tengah ke tengah elemen. Parameter: elemen untuk mewakili elemen yang akan dipindahkan. |
melepaskan() | Melepaskan tombol kiri mouse yang ditekan di lokasi mouse saat ini. |
sendKeys(onElement, charsequence) | Mengirim serangkaian penekanan tombol ke elemen. Parameter: Elemen untuk mewakili elemen yang akan mendapatkan penekanan tombol, biasanya berupa bidang teks. Urutan char- nilai string apa pun untuk mewakili urutan penekanan tombol yang dikirim. |
Contoh Penerapan Kelas Aksi Selenium
1. Impor Action dan kelas Action .
import org.open a.selenium.interactions.Action;
impor org.buka a.selenium.interactions.Actions;
2. Buat instance objek Actions baru
Pembuat tindakan = Tindakan baru (pengandar);
3. Buat Instansi Aksi menggunakan objek Aksi di langkah sebelumnya
Aksi mouseOverHome = pembangun
.moveToElement(link_Home)
.membangun();
Di sini, kami menggunakan metode moveToElement() untuk melakukan mouse-over link Home. Build() selalu merupakan metode terakhir untuk memastikan bahwa semua tindakan dikompilasi dalam satu langkah.
4. Gunakan metode perform saat mengeksekusi objek Action yang kita deklarasikan pada langkah sebelumnya.
Sintaksis:
mouseOverHome.perform();
Contoh 2:
Mari kita ambil contoh lain di mana kelas Action digunakan untuk mengimplementasikan fitur Autocomplete kotak teks.
Untuk melakukannya secara manual, kami menekan tombol shift, ketik teks yang harus dimasukkan dalam huruf besar dan kemudian lepaskan tombol shift. Put, Shift + tombol alfabet ditekan bersamaan.
Untuk meniru operasi yang sama melalui skrip otomatisasi, metode Kelas Tindakan digunakan.
1. Paket Impor
Kelas Action dan Actions ada dalam paket org.openqa.selenium.interactions dari Web Driver API. Untuk menggunakan ini, Anda harus mengimpor paket:
org.openqa.selenium.interactions.Action;
org.openqa.selenium.interactions.Actions;
2. Buat instance kelas Action
Akan membantu jika Anda membuat objek dari kelas Actions untuk memanggil metodenya. Jadi, kami membuat instance kelas Actions dan menggunakan objek WebDriver untuk memulai kelas. Sintaksnya adalah:
Tindakan tindakan = Tindakan baru (objek webdriver);
3. Hasilkan urutan tindakan
Dalam contoh ini, urutan langkah untuk melakukan beberapa tindakan adalah:
- Tekan tombol Shift
- Kirim teks yang diinginkan
- Lepaskan tombol Shift
Untuk melakukan tindakan ini, kelas Tindakan memiliki metode seperti:
- metode keyDown untuk menekan tombol Shift.
- metode sendKeys untuk mengirim teks yang diinginkan.
- Metode keyUp melepaskan tombol Shift.
- KeyDown bertindak sebagai penekanan tombol pengubah untuk fokus pada elemen sementara metode keyUp melepaskan tombol pengubah yang ditekan.
Tombol pengubah mengubah aksi tombol lain saat kedua tombol ditekan secara bersamaan. Misalnya, Shift, Alt dan Ctrl.
Urutan tindakan dihasilkan tetapi tindakan ini dilakukan di webElement. Langkah-langkah untuk ini adalah:
Elemen WebElement = driver.findElement;
tindakan.keyDown(elemen, Tombol, Shift);
action.sendKeys(“TexttoBeConvertAndSendInUpperCase);
tindakan.keyUp(Keys.Shift);
Hal penting yang harus diperhatikan di sini adalah jika Anda kebetulan mengarahkan kursor ke metode kelas Tindakan apa pun, objek kelas Tindakan akan dikembalikan.
4. Bangun urutan tindakan
Anda dapat membangun urutan tindakan melalui metode build() dari kelas Actions. Metode ini menghasilkan seluruh rangkaian tindakan yang siap dilakukan. Sintaksnya adalah:
Tindakan tindakan = tindakan.build();
Metode build() mengembalikan objek bertipe Action yang mewakili tindakan gabungan yang dibangun dari urutan beberapa tindakan yang dipanggil oleh pemanggilan metode.
5. Lakukan urutan tindakan
Langkah terakhir dalam mengeksekusi kelas Action adalah melakukan urutan tindakan melalui metode perform() dari antarmuka Action. Sintaksnya adalah:
tindakan.perform();
Langkah-langkah yang diberikan di atas harus dijalankan untuk memanfaatkan semua metode kelas Tindakan dan melakukan tindakan pengguna yang berbeda menggunakan keyboard dan mouse.
Pelajari Kursus Pengembangan Perangkat Lunak online dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.
Apa selanjutnya?
Jika Anda tertarik untuk mempelajari lebih lanjut tentang pengembangan Perangkat Lunak Tumpukan Penuh, lihat Program PG Eksekutif UpGrad & IIIT-B Pengembangan Perangkat Lunak Tumpukan Penuh yang dirancang untuk para profesional yang bekerja dan menawarkan 500+ jam pelatihan yang ketat, 9+ proyek, dan tugas, status Alumni IIIT-B, proyek batu penjuru praktis & bantuan pekerjaan dengan perusahaan-perusahaan top.
Apa itu kelas aksi di Selenium?
Kelas tindakan adalah kelas yang menjelaskan tindakan, atau serangkaian tindakan, yang dapat Anda lakukan pada elemen web. Kami mengidentifikasi elemen yang ingin kami lakukan tindakan oleh pencari lokasi. Kelas tindakan didefinisikan oleh kombinasi dua karakter dari pengubah tingkat kelas statis publik dan akhiran Tindakan (yaitu Tindakan, KeyAction, PageAction, dll.). Pengubah statis publik memungkinkan kita untuk mengekspos kelas sebagai kelas yang dapat dipakai. Akhiran Action menunjukkan jenis tindakan yang dilakukan. Kelas akhiran Action juga diparameterisasi. Parameter adalah nama elemen tindakan. Misalnya, jika kita ingin melakukan tindakan pada bidang teks, kita akan menggunakan parameter bidang teks.
Apa kegunaan Selenium?
Selenium adalah alat pengujian perangkat lunak portabel yang sangat kuat (alat pengujian perangkat lunak selenium), yang digunakan untuk merekam dan memutar ulang tindakan pengguna di halaman web. Ini digunakan untuk menguji persyaratan fungsional dan non-fungsional dari aplikasi web pada browser web apa pun. Ini diimplementasikan di Java dan memiliki API yang sangat sederhana. Ini mendukung pengujian aplikasi web di semua browser web utama seperti Firefox, Chrome, Internet Explorer, Safari, dll.
Bagaimana cara belajar Selenium di Jawa?
Selenium adalah alat yang memungkinkan Anda menulis tes otomatis dalam sejumlah bahasa pemrograman. Tes ditulis menggunakan driver web. Anda dapat menggunakannya untuk menguji aplikasi web Anda berdasarkan bahasa pemrograman berikut: Java, C#, Python, dan PHP. Sebenarnya, banyak developer merasa tidak perlu mempelajari Selenium Java API. Selenium WebDriver adalah pilihan yang tepat untuk menemukan elemen pada halaman dan melakukan tindakan dengannya. Dimungkinkan untuk mengimplementasikan tes dalam banyak bahasa pemrograman, tetapi jika Anda perlu menulis tes di Java, maka Selenium WebDriver adalah pilihan terbaik. Metode lain untuk mempelajari Selenium di Java adalah menggunakan Selenium IDE, juga dikenal sebagai Selenium RC. Dukungan browser untuk alat ini tidak begitu baik seperti yang kita tahu, hanya Firefox dan Chrome yang didukung. Namun, IDE dapat membantu Anda merancang dan menjalankan uji kasus Selenium dengan cepat, merekam dan memutar kasus uji, membuat kasus uji secara otomatis, dll.