Selenium WebDriver with Node.js는 웹 애플리케이션 테스트를 자동화하는 강력한 도구입니다. Node.js와 함께 사용하면 Selenium WebDriver 브라우저를 제어하고 웹 페이지의 요소와 상호 작용하며 자동화된 테스트 스크립트를 쉽게 작성할 수 있습니다. Chrome, Firefox 및 Safari와 같은 널리 사용되는 브라우저를 지원하므로 Selenium WebDriver 여러 플랫폼에서 웹 애플리케이션을 테스트할 수 있습니다.
이 문서는 Selenium WebDriver 효율적인 자동화 웹 애플리케이션 테스트를 시작하는 데 도움이 되는 설치, 구성 및 실용적인 예제를 다루는 Node.js 사용에 대한 자세한 가이드를 제공합니다.
Selenium WebDriver Node.js 사용 가이드
설치 Selenium WebDriver
및 종속성
또는 명령 프롬프트를 열고 terminal
프로젝트 디렉토리로 이동합니다.
다음 명령을 실행하여 Selenium WebDriver
필요한 종속성을 설치합니다.
npm install selenium-webdriver chromedriver
Selenium WebDriver
이 명령은 Chrome 브라우저를 제어하기 위한 Node.js 및 Chrome 드라이버(chromedriver)용으로 설치됩니다 .
WebDriver 가져오기 및 초기화
필요한 가져오기 module
const { Builder, By, Key, until } = require('selenium-webdriver');
원하는 브라우저(예: Chrome)에 대해 WebDriver 개체를 초기화합니다.
const driver = new Builder().forBrowser('chrome').build();
WebDriver를 사용하여 브라우저와 상호 작용
URL 열기
await driver.get('https://www.example.com');
요소 찾기 및 상호 작용:
// 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();
findElement
, sendKeys
, click
, 등과 같은 메서드를 사용하여 wait
웹 페이지의 요소와 상호 작용할 수 있습니다.
WebDriver 닫기
브라우저를 닫고 세션을 종료합니다.
await driver.quit();
다음은 웹 페이지의 입력 필드에 데이터를 찾아 입력하는 자세한 예입니다.
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();
이 예제에서는 ID()로 입력 요소를 찾은 my-input-id
다음 sendKeys
메서드를 사용하여 입력 필드에 데이터를 입력합니다. 마지막으로 를 사용하여 Enter 키를 누르고 를 사용하여 sendKeys(Key.ENTER)
브라우저를 닫습니다 driver.quit()
.