Selenium WebDriver مع دليل Node.js- Selenium WebDriver Node.js

Selenium WebDriver مع Node.js هي أداة قوية لأتمتة اختبار تطبيقات الويب. باستخدام Selenium WebDriver Node.js ، يمكنك التحكم في المتصفحات والتفاعل مع العناصر الموجودة على صفحات الويب وكتابة نصوص اختبار آلية بسهولة. مع دعم المتصفحات الشائعة مثل 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 لـ Node.js وبرنامج تشغيل Chrome(chromedriver) للتحكم في متصفح Chrome.

استيراد وتهيئة WebDriver

قم باستيراد ملف module

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

قم بتهيئة كائن WebDriver للمتصفح المطلوب(مثل Chrome):

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