تنزيل Geckodriver لـ Firefox & Selenium
⚡ ملخص ذكي
برنامج GeckoDriver لـ Firefox و Selenium يعمل كوسيط بين عملاء W3C WebDriver وموزيلا Firefox، وترجمة الأوامر إلى Mariبروتوكول أونيت. يشرح هذا الدليل التثبيت، وتقنيات التهيئة، ونماذج التعليمات البرمجية، والاستثناءات الشائعة، ومزايا التوافق الأساسية.

ما هو GeckoDriver في Selenium?
يشير مصطلح Gecko إلى محرك متصفح الويب المدمج في Mozilla Firefox المتصفح. يعمل برنامج GeckoDriver كوسيط بين العملاء الذين يدعمون WebDriver (Eclipse, NetBeans, IntelliJ IDEAإلخ) وموزيلا Firefox المتصفح. باختصار، يعمل برنامج GeckoDriver كحلقة وصل بين Selenium اختبارات WebDriver وموزيلا Firefox.
قبل Selenium 3، موزيلا Firefox كان المتصفح هو المتصفح الافتراضي لـ Selenium. بعد Selenium 3- يجب على المختبرين تهيئة البرنامج النصي لاستخدامه Firefox من خلال برنامج GeckoDriver بشكل صريح. Selenium يستخدم بروتوكول W3C WebDriver لإرسال الطلبات إلى GeckoDriver، الذي يترجمها إلى بروتوكول يسمى Mariأونيت. Firefox ثم يفهم الأوامر transmitتيد في Mariتنسيق بروتوكول أونيت وتنفيذه.
مزايا استخدام برنامج GeckoDriver
Selenium إصدار WebDriver 2.53 غير متوافق مع Mozilla Firefox الإصدار 47.0+. الإصدار القديم Firefox برنامج التشغيل المستخدم في إصدارات موزيلا السابقة Firefox تم إيقاف عملية البناء، ولا يمكن استخدام سوى تطبيق GeckoDriver حاليًا. لذلك، يُطلب من المختبرين استخدام GeckoDriver لتشغيل الاختبارات الآلية على Mozilla. Firefox الإصدار 47.0 وما فوق.
الميزة الرئيسية لاستخدام GeckoDriver مقارنةً بالإصدارات القديمة Firefox السائق هو التوافقيعتمد برنامج GeckoDriver على بروتوكول W3C WebDriver للتواصل مع Seleniumيُعدّ اتحاد شبكة الويب العالمية (W3C) معيارًا عالميًا مُحددًا لـ WebDriver. وهذا يعني Selenium لا يحتاج المطورون إلى إنشاء إصدار جديد من برنامج التشغيل لكل إصدار من المتصفح. يمكن استخدام نفس تطبيق WebDriver عبر إصدارات متعددة من المتصفحات، ولهذا السبب يُفضل استخدام GeckoDriver على الإصدارات الأقدم. Firefox سائق.
كيفية تنزيل وتثبيت GeckoDriver في Selenium
يتم توزيع برنامج GeckoDriver كملف تنفيذي يمكن تنزيله مباشرةً على جهازك. اتبع الخطوات التالية لتنزيل وتثبيت GeckoDriver لـ Selenium أتمتة.
الخطوة 1) حدد الإصدار المناسب.
على صفحة الإصدارات الرسمية https://github.com/mozilla/geckodriver/releasesاختر إصدار GeckoDriver المناسب الذي يتوافق مع نظام التشغيل والبنية الخاصة بك.
الخطوة 2) Extracقم بتحميل ملف ZIP.
بمجرد اكتمال تنزيل ملف ZIP، على سبيل المثالtracانقل محتوياته إلى مجلد على جهازك.
الخطوة 3) لاحظ موقع السائق.
سجل مسار المجلد الذي قمت باستخراج الملفات منهtracتم تثبيت برنامج التشغيل. سيتم استخدام هذا الموقع لاحقًا لإنشاء برنامج التشغيل من نص الاختبار الخاص بك.
طرق تهيئة برنامج تشغيل جيكو
توجد ثلاث طرق مختلفة لتهيئة GeckoDriver في جهازك Selenium نصوص الاختبار. اختر النص الذي يناسب إطار عمل الاختبار الخاص بك على أفضل وجه. Selenium الإصدار.
1. استخدام القدرات المرغوبة
أولاً، قم بتعيين خاصية النظام لبرنامج GeckoDriver.
بناء الجملة:
System.setProperty("webdriver.gecko.driver","Path to geckodriver.exe file");
على سبيل المثال:
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
بعد ذلك، حدد الإمكانيات المطلوبة. تساعد الإمكانيات المطلوبة Selenium يجب فهم اسم المتصفح وإصداره ونظام التشغيل المطلوب لتنفيذ الاختبارات الآلية. فيما يلي الكود اللازم لتهيئة GeckoDriver باستخدام فئة DesiredCapabilities.
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
ها هو الكود الكامل:
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
driver = new FirefoxDriver(capabilities);
2. باستخدام Mariعقار أونيت
يمكن أيضًا تهيئة GeckoDriver باستخدام خاصية marionette كما هو موضح أدناه.
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
إذا تم تهيئة GeckoDriver باستخدام الطريقة المذكورة أعلاه، فسيكون رمز القدرات المطلوبة هو لست مطلوب.
3. باستخدام Firefoxمزيد من الخيارات
موزيلا Firefox الإصدار 47+ يكشف عن Mariبرنامج تشغيل Onette كنظام قديم. بالاستفادة من ذلك، Mariيمكن استدعاء برنامج تشغيل onette من خلال Firefox الخيارات كما هو موضح أدناه.
FirefoxOptions options = new FirefoxOptions();
options.setLegacy(true);
Code للانطلاق Firefox باستخدام برنامج GeckoDriver
ما يلي JUnitيُظهر المثال القائم على - برنامجًا كاملاً وقابلاً للتنفيذ Selenium اختبار يبدأ Firefox من خلال برنامج GeckoDriver وينتقل إلى عرض توضيحي URL.
package com.guru99.demo;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
public class GeckoDriverDemo {
String driverPath = "D:\\Guru99Demo\\GeckoDriver.exe";
public WebDriver driver;
@Before
public void startBrowser() {
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette", true);
driver = new FirefoxDriver(capabilities);
}
@Test
public void navigateToUrl() {
driver.get("https://demo.guru99.com/selenium/guru99home/");
}
@After
public void endTest() {
driver.quit();
}
}
Code تفسير
@ قبل الطريقة
في البداية، قمنا بتعيين خاصية النظام لبرنامج GeckoDriver إلى موقع تنزيل ملف geckodriver.exe. كما قمنا بتعيين خاصية marionette إلى القيمة true. Selenium يستخدم Mariبروتوكول أونيت للتواصل مع برنامج جيكو درايفر. وأخيرًا، نبدأ Firefox مثيل المتصفح باستخدام كائن القدرات المطلوبة.
تُحقق العبارات التالية هذا الإعداد.
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
driver = new FirefoxDriver(capabilities);
@طريقة اختبار
ننتقل إلى ما حدده المستخدم URL باستخدام المدمج في get الطريقة التي تقدمها Selenium WebDriver، كما هو موضح أدناه.
driver.get("https://demo.guru99.com/selenium/guru99home/");
@بعد الطريقة
وأخيرًا، نقوم بإغلاق نافذة المتصفح باستخدام quit الأسلوب.
driver.quit();
تعديل نص برمجي من غير الوزغة إلى الوزغة
البرامج النصية غير GeckoDriver المستخدمة سابقًا Selenium كانت الخطوة الثالثة بسيطة. كل ما عليك فعله هو إنشاء نسخة من Firefox السائق واستخدم متغير المثيل.
@Before
public void startBrowser() {
driver = new FirefoxDriver();
}
لتحويل البرنامج النصي لـ GeckoDriver، ما عليك سوى إضافة سطر واحد من التعليمات البرمجية يشير إلى موقع geckodriver.exe.
@Before
public void startBrowser() {
System.setProperty("webdriver.gecko.driver", "D:\\Downloads\\GeckoDriver.exe");
driver = new FirefoxDriver();
}
الاستثناءات الشائعة التي تحدث أثناء استخدام GeckoDriver
فيما يلي قائمة بالاستثناءات الشائعة التي تحدث أثناء استخدام GeckoDriver، بالإضافة إلى حلولها.



