Selenium WebDriver avec Node.js Guide- Selenium WebDriver Node.js

Selenium WebDriver avec Node.js est un outil puissant pour automatiser les tests d'applications Web. En utilisant Selenium WebDriver Node.js, vous pouvez contrôler les navigateurs, interagir avec des éléments sur des pages Web et écrire facilement des scripts de test automatisés. Avec la prise en charge des navigateurs populaires tels que Chrome, Firefox et Safari, Selenium WebDriver vous permet de tester des applications Web sur plusieurs plates-formes.

Cet article fournit un guide détaillé sur l'utilisation Selenium WebDriver de Node.js, couvrant l'installation, la configuration et des exemples pratiques pour vous aider à démarrer avec des tests d'applications Web automatisés efficaces.

 

Guide d'utilisation Selenium WebDriver avec Node.js

Installation Selenium WebDriver et dépendances

Ouvrez votre terminal invite de commande ou et accédez au répertoire de votre projet.

Exécutez la commande suivante pour installer Selenium WebDriver et les dépendances nécessaires :

npm install selenium-webdriver chromedriver

Cette commande s'installera Selenium WebDriver pour Node.js et le pilote Chrome(chromedriver) pour contrôler le navigateur Chrome.

Importer et initialiser WebDriver

Importez les éléments requis module

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

Initialisez l'objet WebDriver pour le navigateur souhaité(par exemple, Chrome) :

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

Utiliser WebDriver pour interagir avec le navigateur

Ouvrir une URL

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

Trouvez et interagissez avec des éléments :

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

Vous pouvez utiliser des méthodes telles que findElement, sendKeys, click, wait, etc. pour interagir avec les éléments de la page Web.

Fermez le pilote Web

Fermez le navigateur et terminez la session :

await driver.quit();

 

Voici un exemple détaillé de recherche et de saisie de données dans un champ de saisie sur une page 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();  

 

Dans cet exemple, nous trouvons l'élément d'entrée par ID( my-input-id), puis utilisons la sendKeys méthode pour saisir des données dans le champ de saisie. Enfin, nous appuyons sur la touche Entrée en utilisant sendKeys(Key.ENTER) et fermons le navigateur avec driver.quit().