Selenium Ekstensi Inti (User-Extensions.js)
Untuk memahami ekstensi, pertama-tama mari kita pahami tiga pilar Selenium IDE
- Tindakan: Operasi apa yang Anda lakukan di Layar UI
- Assessor/Assertion: Verifikasi apa yang Anda lakukan terhadap data yang Anda peroleh dari UI
- Strategi Pencari Lokasi: Bagaimana kita bisa menemukan elemen di UI.
Sekarang, Selenium IDE memiliki perpustakaan yang sangat matang dengan banyak Tindakan, Penegasan/Penilai, dan Strategi Pencari Lokasi.
Namun terkadang kita perlu menambahkan beberapa fungsi lagi untuk kebutuhan proyek kita. Dalam situasi tersebut, kami dapat memperluas perpustakaan ini dengan menambahkan ekstensi khusus kami. Ekstensi khusus ini disebut 'Ekstensi Pengguna'.
Misalnya, kita memerlukan Action yang dapat mengubah teks menjadi huruf besar sebelum mengisinya di elemen web. Anda tidak dapat menemukan Tindakan ini di pustaka Tindakan default. Dalam hal ini Anda dapat membuat 'Ekstensi Pengguna' Anda sendiri. Dalam tutorial ini, kita akan mempelajari cara membuat ekstensi pengguna untuk mengubah Teks menjadi Huruf Besar
Persyaratan untuk membuat Selenium ekstensi pengguna
Untuk membuat ekstensi pengguna untuk Selenium IDE, kita perlu mengetahui konsep dasarnya JavaNaskah ke Java Konsep objek prototipe skrip.
Untuk membuat ekstensi pengguna, Anda perlu membuat Java metode skrip dan menambahkannya ke prototipe objek Selenium dan prototipe objek PageBot.
Seterpercayaapakah Olymp Trade? Kesimpulan Selenium IDE mengenali Ekstensi Pengguna?
Setelah menambahkan Ekstensi Pengguna ke Selenium IDE saat kita mulai Selenium IDE, semua ekstensi dalam prototipe javascript ini dimuat, dan Selenium IDE mengenali mereka berdasarkan namanya.
Cara Membuat Ekstensi Pengguna
Langkah 1) Tindakanโ semua tindakan dimulai dengan โlakukanโ, yaitu jika tindakan tersebut untuk teks huruf besar maka namanya akan menjadi doTextUpperCase. Saat kami menambahkan metode tindakan ini Selenium SDI, Selenium IDE sendiri akan membuat metode tunggu untuk tindakan ini. Jadi dalam hal ini saat kita membuat doTextUpperCase tindakan, Selenium IDE akan membuat fungsi tunggu yang sesuai sebagai TeksUpperCaseDanTunggu. Itu dapat menerima dua parameter
Contoh: Tindakan Teks Huruf Besar
Selenium.prototype.doTextUpperCase = function(locator, text) {
// Here findElement is itself capable to handle all type of locator(xpath,css,name,id,className), We just need to pass the locator text
var element = this.page().findElement(locator);
// Create the text to type
text = text.toUpperCase();
// Replace the element text with the new text
this.page().replaceText(element, text);
};
Langkah 2) Penilai/Penegasan- Semua penilai yang terdaftar di prototipe objek Selenium akan diberi awalan
dengan "mendapatkan" atau "adalah" Ex. getValueFromCompoundTable , isValueFromCompoundTable . Ia dapat menerima dua parameter, satu untuk target dan lainnya untuk bidang nilai dalam kasus uji.
Untuk setiap Penilai, akan ada fungsi verifikasi terkait yang diawali dengan โverifikasiโ, โtegaskanโ, dan fungsi tunggu yang diawali dengan โwaitForโ
Contoh: Untuk penilai Teks Huruf Besar
Selenium.prototype.assertTextUpperCase = function(locator, text) {
// All locator-strategies are automatically handled by "findElement"
var element = this.page().findElement(locator);
// Create the text to verify
text = text.toUpperCase();
// Get the actual element value
var actualValue = element.value;
// Make sure the actual value matches the expected
Assert.matches(expectedValue, actualValue);
};
Selenium.prototype.isTextEqual = function(locator, text) {
return this.getText(locator).value===text;
};
Selenium.prototype.getTextValue = function(locator, text) {
return this.getText(locator).value;
};
Langkah 3) Strategi pencari lokasi- Jika kita ingin membuat fungsi kita sendiri untuk menemukan suatu elemen, maka
kita perlu memperluas prototipe PageBot dengan fungsi dengan awalan โlocElementBy.โ
Dibutuhkan dua parameter, yang pertama adalah string pencari lokasi dan yang kedua adalah dokumen
di mana ia perlu dicari.
Contoh: Untuk Pencari Teks Huruf Besar
// The "inDocument" is a document you are searching.
PageBot.prototype.locateElementByUpperCase = function(text, inDocument) {
// Create the text to search for
var expectedValue = text.toUpperCase();
// Loop through all elements, looking for ones that have
// a value === our expected value
var allElements = inDocument.getElementsByTagName("*");
// This star '*' is a kind of regular expression it will go through every element (in HTML DOM every element surely have a tag name like<body>,<a>,<h1>,<table>,<tr>,<td> etc. ). Here our motive is to find an element which matched with the Upper Case text we have passed so we will search it with all elements and when we get match we will have the correct web element.
for (var i = 0; i < allElements.length; i++) {
var testElement = allElements[i];
if (testElement.innerHTML && testElement.innerHTML === expectedValue) {
return testElement;
}
}
return null;
};
Bagaimana cara menggunakan ekstensi inti yang baru dibuat?
- Pergi ke Selenium IDE
Klik Opsi -> Opsiโฆ
- Pada bagian General pilih lokasi yang baru dibuat Selenium Ekstensi Inti
- Klik OK dan mulai ulang Selenium IDE
- Anda akan menemukan ekstensi di daftar perintah
Berikut adalah daftar ekstensi/plug-in populer yang digunakan Selenium IDE
| Nama | Tujuan |
|---|---|
| Favorit | Untuk menandai rangkaian pengujian sebagai favorit dan menjalankannya dalam satu klik |
| Fleksibel Pilot X | Untuk otomatisasi berbasis Flex |
| FlexMonkium | Untuk perekaman dan pemutaran berbasis Adobe Flex pengujian in Selenium IDE |
| Pencatatan File | Untuk menyimpan log dalam file |
| flow Control | Untuk mengontrol aliran eksekusi pengujian |
| Sorot Elemen | Untuk menyorot kontrol web |
| Penantian Tersirat | Untuk menunggu suatu elemen untuk batas waktu tertentu |
| Tangkapan Layar Saat Gagal | Ambil tangkapan layar jika terjadi kegagalan |
| Hasil uji | Simpan Uji Kasus hasil untuk rangkaian pengujian dalam satu klik |
Anda bisa mendapatkan semua ini dan masih banyak lagi dari SeleniumBagian pengunduhan situs resmi HQ
http://docs.seleniumhq.org/download/
Ringkasan
- Ada tiga bagian Selenium IDE, Tindakan, Penilai/Penegasan, Strategi Pencari Lokasi.
- Ekstensi pengguna dibuat, kapan Selenium IDE tidak memenuhi persyaratan saat ini.
- Untuk membuat ekstensi pengguna diperlukan penambahan javascript ke prototipe objek Selenium.
- Setelah membuat ekstensi, diperlukan untuk menambahkannya Selenium IDE dan mulai ulang IDE.
Download Selenium Ekstensi Inti yang digunakan dalam Tutorial ini









