Selenium WebDriver con Node.js Guía- Selenium WebDriver Node.js

Selenium WebDriver with Node.js es una poderosa herramienta para automatizar las pruebas de aplicaciones web. Al utilizar Selenium WebDriver Node.js, puede controlar navegadores, interactuar con elementos en páginas web y escribir scripts de prueba automatizados con facilidad. Con soporte para navegadores populares como Chrome, Firefox y Safari, Selenium WebDriver le permite probar aplicaciones web en múltiples plataformas.

Este artículo proporciona una guía detallada sobre el uso Selenium WebDriver de Node.js, que cubre la instalación, la configuración y ejemplos prácticos para ayudarlo a comenzar con las pruebas de aplicaciones web automatizadas y eficientes.

 

Guía de uso Selenium WebDriver con Node.js

Instalación Selenium WebDriver y dependencias

Abra su terminal símbolo del sistema o y navegue hasta el directorio de su proyecto.

Ejecute el siguiente comando para instalar Selenium WebDriver y las dependencias necesarias:

npm install selenium-webdriver chromedriver

Este comando se instalará Selenium WebDriver para Node.js y el controlador Chrome(chromedriver) para controlar el navegador Chrome.

Importar e inicializar WebDriver

Importar lo requerido module

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

Inicialice el objeto WebDriver para el navegador deseado(por ejemplo, Chrome):

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

Use WebDriver para interactuar con el navegador

Abrir una URL

await driver.get('https://www.example.com');

Encuentra e interactúa con elementos:

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

Puede utilizar métodos como findElement, sendKeys, click, wait, etc., para interactuar con los elementos de la página web.

Cierra el WebDriver

Cierra el navegador y finaliza la sesión:

await driver.quit();

 

Aquí hay un ejemplo detallado de cómo encontrar e ingresar datos en un campo de entrada en una página 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();  

 

En este ejemplo, encontramos el elemento de entrada por ID( my-input-id), luego usamos el sendKeys método para ingresar datos en el campo de entrada. Finalmente, presionamos la tecla Enter usando sendKeys(Key.ENTER) y cerramos el navegador con driver.quit().