Selenium WebDriver con Node.js Guida- Selenium WebDriver Node.js

Selenium WebDriver con Node.js è un potente strumento per automatizzare i test delle applicazioni web. Utilizzando Selenium WebDriver Node.js, puoi controllare i browser, interagire con gli elementi delle pagine Web e scrivere facilmente script di test automatizzati. Con il supporto per i browser più diffusi come Chrome, Firefox e Safari, Selenium WebDriver ti consente di testare le applicazioni Web su più piattaforme.

Questo articolo fornisce una guida dettagliata sull'utilizzo Selenium WebDriver con Node.js, coprendo l'installazione, la configurazione e esempi pratici per aiutarti a iniziare con un efficiente test automatizzato delle applicazioni web.

 

Guida all'utilizzo Selenium WebDriver con Node.js

Installazione Selenium WebDriver e dipendenze

Apri terminal il prompt dei comandi o e vai alla directory del progetto.

Eseguire il comando seguente per installare Selenium WebDriver e le dipendenze necessarie:

npm install selenium-webdriver chromedriver

Questo comando verrà installato Selenium WebDriver per Node.js e il driver Chrome(chromedriver) per il controllo del browser Chrome.

Importa e inizializza WebDriver

Importa il file richiesto module

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

Inizializza l'oggetto WebDriver per il browser desiderato(ad es. Chrome):

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

Usa WebDriver per interagire con il browser

Apri un URL

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

Trova e interagisci con gli elementi:

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

Puoi utilizzare metodi come findElement, sendKeys, click, wait, ecc. per interagire con gli elementi della pagina web.

Chiudere il WebDriver

Chiudi il browser e termina la sessione:

await driver.quit();

 

Ecco un esempio dettagliato di ricerca e inserimento di dati in un campo di input su una pagina 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();  

 

In questo esempio, troviamo l'elemento di input per ID( my-input-id), quindi utilizziamo il sendKeys metodo per inserire i dati nel campo di input. Infine, premiamo il tasto Invio usando sendKeys(Key.ENTER) e chiudiamo il browser con driver.quit().