Selenium WebDriver Node.js 指南- Selenium WebDriver Node.js

Selenium WebDriver Node.js 是一个用于自动化 Web 应用程序测试的强大工具。 通过 Selenium WebDriver 与 Node.js 结合使用,您可以轻松控制浏览器、与网页上的元素交互以及编写自动化测试脚本。 通过支持 Chrome、Firefox 和 Safari 等流行浏览器, Selenium WebDriver 您可以跨多个平台测试 Web 应用程序。

本文提供了有关使用 Selenium WebDriver Node.js 的详细指南,涵盖安装、配置和实际示例,以帮助您开始进行高效的自动化 Web 应用程序测试。

 

Selenium WebDriver Node.js 使用指南

安装 Selenium WebDriver 和依赖

打开您的 terminal 或 命令提示符并导航到您的项目目录。

运行以下命令来安装 Selenium WebDriver 必要的依赖项:

npm install selenium-webdriver chromedriver

此命令将安装 Selenium WebDriver Node.js 和用于控制 Chrome 浏览器的 Chrome 驱动程序(chromedriver)。

导入并初始化WebDriver

导入需要的 module

const { Builder, By, Key, until } = require('selenium-webdriver');

为所需的浏览器(例如 Chrome)初始化 WebDriver 对象:

const driver = new Builder().forBrowser('chrome').build();

使用WebDriver与浏览器交互

打开一个网址

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 您可以使用、 sendKeysclick 、等 方法 wait 与网页上的元素进行交互。

关闭网络驱动程序

关闭浏览器并结束会话:

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()