Selenium WebDriver su Node.js yra galingas įrankis, skirtas automatizuoti žiniatinklio programų testavimą. Naudodami Selenium WebDriver su Node.js galite valdyti naršykles, sąveikauti su tinklalapių elementais ir lengvai rašyti automatinius bandymo scenarijus. Palaikydami populiarias naršykles, pvz., „Chrome“, „Firefox“ ir „Safari“, Selenium WebDriver galite išbandyti žiniatinklio programas keliose platformose.
Šiame straipsnyje pateikiamas išsamus naudojimo Selenium WebDriver su Node.js vadovas, apimantis diegimą, konfigūravimą ir praktinius pavyzdžius, kurie padės pradėti efektyvų automatinį žiniatinklio programų testavimą.
Naudojimo Selenium WebDriver su Node.js vadovas
Diegimas Selenium WebDriver
ir priklausomybės
Atidarykite savo terminal
arba komandų eilutę ir eikite į savo projekto katalogą.
Vykdykite šią komandą, kad įdiegtumėte Selenium WebDriver
ir būtinas priklausomybes:
npm install selenium-webdriver chromedriver
Ši komanda bus įdiegta Selenium WebDriver
Node.js ir „Chrome“ tvarkyklei(chromedriver), skirta „Chrome“ naršyklei valdyti.
Importuokite ir inicijuokite „WebDriver“.
Importuokite reikiamą module
const { Builder, By, Key, until } = require('selenium-webdriver');
Inicijuoti WebDriver objektą norimai naršyklei(pvz., Chrome):
const driver = new Builder().forBrowser('chrome').build();
Norėdami sąveikauti su naršykle, naudokite „WebDriver“.
Atidarykite URL
await driver.get('https://www.example.com');
Raskite elementus ir sąveikaukite su jais:
// 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();
Norėdami sąveikauti su tinklalapio elementais, galite naudoti tokius metodus kaip findElement
, sendKeys
, click
, , ir kt. wait
Uždarykite WebDriver
Uždarykite naršyklę ir užbaikite seansą:
await driver.quit();
Čia pateikiamas išsamus duomenų paieškos ir įvedimo į tinklalapio įvesties lauką pavyzdys:
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();
Šiame pavyzdyje įvesties elementą randame pagal ID( my-input-id
), tada naudokite sendKeys
metodą duomenims įvesti į įvesties lauką. Galiausiai spaudžiame klavišą Enter sendKeys(Key.ENTER)
ir uždarome naršyklę naudodami driver.quit()
.