Selenium WebDriver z Node.js to potężne narzędzie do automatyzacji testowania aplikacji internetowych. Korzystając Selenium WebDriver z Node.js, możesz z łatwością kontrolować przeglądarki, wchodzić w interakcje z elementami na stronach internetowych i pisać zautomatyzowane skrypty testowe. Dzięki obsłudze popularnych przeglądarek, takich jak Chrome, Firefox i Safari, Selenium WebDriver umożliwia testowanie aplikacji internetowych na wielu platformach.
Ten artykuł zawiera szczegółowy przewodnik dotyczący korzystania Selenium WebDriver z Node.js, obejmujący instalację, konfigurację i praktyczne przykłady, które pomogą Ci rozpocząć wydajne, zautomatyzowane testowanie aplikacji internetowych.
Przewodnik po korzystaniu Selenium WebDriver z Node.js
Zainstaluj Selenium WebDriver
i zależności
Otwórz terminal
wiersz polecenia lub i przejdź do katalogu projektu.
Uruchom następujące polecenie, aby zainstalować Selenium WebDriver
i niezbędne zależności:
npm install selenium-webdriver chromedriver
To polecenie zainstaluje Selenium WebDriver
Node.js i sterownik Chrome(chromedriver) do kontrolowania przeglądarki Chrome.
Zaimportuj i zainicjuj WebDriver
Zaimportuj wymagane module
const { Builder, By, Key, until } = require('selenium-webdriver');
Zainicjuj obiekt WebDriver dla żądanej przeglądarki(np. Chrome):
const driver = new Builder().forBrowser('chrome').build();
Użyj WebDriver do interakcji z przeglądarką
Otwórz adres URL
await driver.get('https://www.example.com');
Znajdź i wejdź w interakcję z elementami:
// 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();
Możesz użyć metod takich jak findElement
, sendKeys
, click
, wait
itp., aby wchodzić w interakcje z elementami na stronie internetowej.
Zamknij WebDrivera
Zamknij przeglądarkę i zakończ sesję:
await driver.quit();
Oto szczegółowy przykład znajdowania i wprowadzania danych do pola wprowadzania na stronie internetowej:
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();
W tym przykładzie znajdujemy element wejściowy za pomocą identyfikatora( my-input-id
), a następnie używamy tej sendKeys
metody do wprowadzania danych w polu wejściowym. Na koniec wciskamy klawisz Enter za pomocą sendKeys(Key.ENTER)
i zamykamy przeglądarkę za pomocą driver.quit()
.