Selenium WebDriver with Node.js adalah alat yang ampuh untuk mengotomatisasi pengujian aplikasi web. Dengan menggunakan Selenium WebDriver Node.js, Anda dapat mengontrol browser, berinteraksi dengan elemen di halaman web, dan menulis skrip pengujian otomatis dengan mudah. Dengan dukungan untuk browser populer seperti Chrome, Firefox, dan Safari, Selenium WebDriver memungkinkan Anda menguji aplikasi web di berbagai platform.
Artikel ini memberikan panduan mendetail tentang cara menggunakan Selenium WebDriver Node.js, yang mencakup penginstalan, konfigurasi, dan contoh praktis untuk membantu Anda memulai pengujian aplikasi web otomatis yang efisien.
Panduan untuk menggunakan Selenium WebDriver dengan Node.js
Instal Selenium WebDriver
dan dependensi
Buka terminal
atau command prompt Anda dan arahkan ke direktori proyek Anda.
Jalankan perintah berikut untuk menginstal Selenium WebDriver
dan dependensi yang diperlukan:
npm install selenium-webdriver chromedriver
Perintah ini akan menginstal Selenium WebDriver
untuk Node.js dan driver Chrome(chromedriver) untuk mengontrol browser Chrome.
Impor dan inisialisasi WebDriver
Impor yang diperlukan module
const { Builder, By, Key, until } = require('selenium-webdriver');
Inisialisasi objek WebDriver untuk browser yang diinginkan(misalnya, Chrome):
const driver = new Builder().forBrowser('chrome').build();
Gunakan WebDriver untuk berinteraksi dengan browser
Buka URL
await driver.get('https://www.example.com');
Temukan dan berinteraksi dengan elemen:
// Find an element by ID
const element = await driver.findElement(By.id('my-element-id'));
// Enter text into an input element
await element.sendKeys('Hello, World!');
// Press the Enter key
await element.sendKeys(Key.ENTER);
// Wait for an element to be located
await driver.wait(until.elementLocated(By.css('.my-element-class')));
// Click on an element
await element.click();
Anda dapat menggunakan metode seperti findElement
, sendKeys
, click
, wait
, dll., untuk berinteraksi dengan elemen di halaman web.
Tutup WebDriver
Tutup browser dan akhiri sesi:
await driver.quit();
Berikut adalah contoh mendetail untuk menemukan dan memasukkan data ke dalam kolom input di halaman web:
const { Builder, By, Key, until } = require('selenium-webdriver');
async function runTest() {
try {
const driver = new Builder().forBrowser('chrome').build();
await driver.get('https://www.example.com');
// Find the input element by ID
const inputElement = await driver.findElement(By.id('my-input-id'));
// Enter data into the input field
await inputElement.sendKeys('Hello, World!');
// Press the Enter key
await inputElement.sendKeys(Key.ENTER);
// Close the browser
await driver.quit();
} catch(error) {
console.error('Test failed:', error);
}
}
runTest();
Dalam contoh ini, kami menemukan elemen input dengan ID( my-input-id
), kemudian menggunakan sendKeys
metode untuk memasukkan data ke dalam kolom input. Terakhir, kami menekan tombol Enter menggunakan sendKeys(Key.ENTER)
dan menutup browser dengan driver.quit()
.