Selenium WebDriver dengan Node.js ialah alat yang berkuasa untuk mengautomasikan ujian aplikasi web. Dengan menggunakan Selenium WebDriver Node.js, anda boleh mengawal penyemak imbas, berinteraksi dengan elemen pada halaman web dan menulis skrip ujian automatik dengan mudah. Dengan sokongan untuk penyemak imbas popular seperti Chrome, Firefox dan Safari, Selenium WebDriver membolehkan anda menguji aplikasi web merentas berbilang platform.
Artikel ini menyediakan panduan terperinci tentang penggunaan Selenium WebDriver dengan Node.js, meliputi pemasangan, konfigurasi dan contoh praktikal untuk membantu anda bermula dengan ujian aplikasi web automatik yang cekap.
Panduan untuk menggunakan Selenium WebDriver dengan Node.js
Pasang Selenium WebDriver
dan kebergantungan
Buka terminal
atau command prompt anda dan navigasi ke direktori projek anda.
Jalankan arahan berikut untuk memasang Selenium WebDriver
dan kebergantungan yang diperlukan:
npm install selenium-webdriver chromedriver
Perintah ini akan dipasang Selenium WebDriver
untuk Node.js dan pemacu Chrome(chromedriver) untuk mengawal penyemak imbas Chrome.
Import dan mulakan WebDriver
Import yang diperlukan module
const { Builder, By, Key, until } = require('selenium-webdriver');
Mulakan objek WebDriver untuk penyemak imbas yang dikehendaki(cth, Chrome):
const driver = new Builder().forBrowser('chrome').build();
Gunakan WebDriver untuk berinteraksi dengan penyemak imbas
Buka URL
await driver.get('https://www.example.com');
Cari 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 boleh menggunakan kaedah seperti findElement
, sendKeys
, click
, wait
dsb., untuk berinteraksi dengan elemen pada halaman web.
Tutup WebDriver
Tutup pelayar dan tamatkan sesi:
await driver.quit();
Berikut ialah contoh terperinci mencari dan memasukkan data ke dalam medan input pada 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 mencari elemen input mengikut ID( my-input-id
), kemudian gunakan sendKeys
kaedah untuk memasukkan data ke dalam medan input. Akhir sekali, kami menekan kekunci Enter menggunakan sendKeys(Key.ENTER)
dan menutup pelayar dengan driver.quit()
.