Selenium البرنامج التعليمي IDE

⚡ ملخص ذكي

Selenium بيئة التطوير المتكاملة (IDE) هي أداة التسجيل والتشغيل الخاصة بـ Selenium مجموعة، مصممة للنموذج الأوليping الاختبارات بدلاً من صيانة مجموعات كبيرة، وتغطي لوحاتها تسجيل وتحرير وتشغيل وفحص كل أمر من أوامر سيلينيز.

  • 🔘 الغرض: تقوم بيئة التطوير المتكاملة بتسجيل إجراءات المتصفح كأوامر Selenese وإعادة تشغيلها دون أي برمجة.
  • ☑️ مجال العمل تعامل معه كنموذج أوليping ثم قم بتصدير البرنامج النصي للحصول على إطار عمل قابل للصيانة.
  • ✅ شريط القوائم: تتولى وظائف معالجة الملفات إنشاء الملفات وفتحها وحفظها وتصديرها؛ بينما يقوم خيار التحرير بإدراج أوامر وتعليقات جديدة.
  • 🧪 خيارات: يُحدد مربع حوار الخيارات مهلة الانتظار الافتراضية، وهي الأساس URL السلوك وترتيب بناء المحدد.
  • 🛠️ رئيس التحرير: يُستخدم عرض الجدول لإدخال الأوامر والأهداف والقيم؛ بينما يعرض عرض المصدر نفس النص البرمجي كلغة ترميز.
  • 📊 لوحات التعليقات: يعرض جزء السجل رسائل التصحيح والمعلومات والتحذير والخطأ، بينما يشرح جزء المرجع الأمر المحدد.
  • 🚀 اليوم: بيئة التطوير المتكاملة الحالية هي Chrome، Firefox وإضافة لمتصفح إيدج تحفظ المشاريع كملف واحد بامتداد .side.

Selenium شرحٌ لبيئة التطوير المتكاملة (IDE) يغطي لوحاتها وقوائمها وشريط أدواتها

ما هي تفاصيل Selenium IDE؟

Selenium IDE (بيئة التطوير المتكاملة) هي أبسط أداة في Selenium جناح. إنها Firefox إضافة تُتيح إنشاء الاختبارات بسرعة فائقة من خلال وظيفة التسجيل والتشغيل. هذه الميزة مشابهة لـ QTP. إنه سهل التثبيت وسهل التعلم.

⚠️ ملاحظة حول الإصدارات: القادم Firefox تم إيقاف الإضافة الموضحة في هذه المقالة. لا تزال الأداة متاحة كملحق لمتصفح كروم. Firefox والحافة ملحق المستعرض هذا يحافظ على خاصية التسجيل والتشغيل ولكنه يعيد ترتيب الواجهة ويحفظ المشروع كملف واحد .side ملف. يتم الاحتفاظ بكل الشاشة والإعدادات الأصلية أدناه كما تم نشرها.

بسبب بساطته، Selenium ينبغي استخدام بيئة التطوير المتكاملة (IDE) كنموذج أولي فقطping أداة، وليست حلاً شاملاً للمطورينping وصيانة مجموعات الاختبارات المعقدة.

على الرغم من أنك سوف تكون قادرة على استخدامها Selenium IDE بدون معرفة مسبقة بالبرمجة، يجب أن تكون على الأقل على دراية بـ HTML، Javaسيناريوومعرفة نموذج كائن المستند (DOM) للاستفادة من هذه الأداة إلى أقصى حد. معرفة بـ Javaسيكون البرنامج النصي مطلوبًا عندما نصل إلى القسم المتعلق بأمر Selenese "runScript".

Selenium يدعم IDE وضع الإكمال التلقائي عند إنشاء الاختبارات. تخدم هذه الميزة غرضين:

  • يساعد المختبر على إدخال الأوامر بسرعة أكبر.
  • فهو يقيد المستخدم من إدخال أوامر غير صالحة.

Selenium ميزات بيئة تطوير متكاملة

تحدد الشاشة الموضحة أدناه كل منطقة مشار إليها في بقية هذه المقالة.

Selenium نافذة بيئة التطوير المتكاملة مع شريط القوائم، القاعدة URL شريط الأدوات، ولوحة حالة الاختبار، والمحرر، ولوحة السجل (مُصنّفة)

شريط القوائم

يقع في الجزء العلوي من بيئة التطوير المتكاملة. القوائم الأكثر استخدامًا هي قائمة الملف، وقائمة التحرير، وقائمة الخيارات.

ملف القائمة

  • يحتوي على خيارات لإنشاء الاختبارات وفتحها وحفظها وإغلاقها.
  • يتم حفظ الاختبارات بتنسيق HTML.
  • الخيار الأكثر فائدة هو "تصدير" لأنه يسمح لك بتحويل Selenium حالات اختبار IDE إلى تنسيقات ملفات يمكن تشغيلها Selenium التحكم عن بعد وWebDriver
  • سيؤدي خيار "تصدير حالة الاختبار كـ..." إلى تصدير حالة الاختبار المفتوحة حاليًا فقط.
  • سيؤدي خيار "تصدير مجموعة الاختبار باسم..." إلى تصدير جميع حالات الاختبار في مجموعة الاختبار المفتوحة حاليًا.

تعرض قائمة الملفات الموسعة أدناه كلا إدخالي التصدير جنبًا إلى جنب.

Selenium تم توسيع قائمة ملفات بيئة التطوير المتكاملة (IDE) لتظهر خياري "تصدير حالة الاختبار كـ" و"تصدير مجموعة الاختبار كـ".

  • اعتبارا من Selenium في الإصدار IDE v1.9.1، يمكن تصدير حالات الاختبار فقط إلى التنسيقات التالية:
    • .cs (كود مصدر C#)
    • .جافا (Java كود المصدر)
    • .py (Python كود المصدر)
    • .rb (كود مصدر روبي)

تقوم عملية التصدير بإعادة كتابة كل سطر من سطور لغة سيلينيز كعبارة باللغة المختارة، كما هو الحال في هذا التحويل من HTML إلىJava تُظهر المقارنة.

حالة اختبار Selenese HTML معروضة بجانب ما يعادلها من الملفات المصدرة Java شفرة المصدر

ملاحظة: Selenium تمت إزالة جهاز التحكم عن بعد في Selenium 3، لذا لم يعد يتم تشغيل نص RC المُصدَّر. يقوم بيئة التطوير المتكاملة الحالية بتصدير كود WebDriver بدلاً من ذلك.

عدل القائمة

  • يحتوي على خيارات معتادة مثل التراجع والإعادة والقص والنسخ واللصق والحذف وتحديد الكل.
  • الخياران الأكثر أهمية هما "إدراج أمر جديد" و "إدراج تعليق جديد".

Selenium قائمة تحرير بيئة التطوير المتكاملة (IDE) مع تمييز خياري "إدراج أمر جديد" و"إدراج تعليق جديد".

سيتم وضع الأمر أو التعليق المدرج حديثًا أعلى السطر المحدد حاليًا.

شبكة المحرر قبل وبعد إدراج أمر جديد أعلى السطر المحدد

  • الأوامر ملونة باللون الأسود.
  • التعليقات ملونة باللون الأرجواني.

يُسهّل اختلاف اللون تمييز التعليق المُدرج في نص طويل.

صفوف المحرر تُظهر أمر سيلينيز أسود اللون بجوار سطر تعليق بنفسجي اللون

قائمة الخيارات

يوفر واجهة لتكوين إعدادات مختلفة Selenium IDE

سنركز على خيارات "الخيارات" و"تنسيق الحافظة".

قائمة فرعية لتنسيق الحافظة تعرض جميع تنسيقات مقتطفات التعليمات البرمجية المتاحة

تنسيق الحافظة

  • تتيح لك خاصية "تنسيق الحافظة" نسخ أمر Selenese من المحرر ولصقه كجزء من التعليمات البرمجية.
  • يتبع تنسيق الكود الخيار الذي حددته هنا في قائمة تنسيق الحافظة.
  • HTML هو التحديد الافتراضي.

على سبيل المثال ، عندما تختار Java/JUnit 4/WebDriver كصيغة الحافظة، كل أمر Selenese تقوم بنسخه من Selenium سيتم لصق محرر IDE كـ Java شفرة. انظر الرسم التوضيحي أدناه.

أمر سيلينيزي منسوخ من المحرر وملصق كـ Java بيان WebDriver

Selenium مربع حوار خيارات IDE

يمكنك إطلاق Selenium يمكنك الوصول إلى مربع الحوار "خيارات IDE" بالنقر فوق "خيارات" > "خيارات..." على شريط القائمة. ورغم توفر العديد من الإعدادات، فسوف نركز على القليل من الإعدادات المهمة.

Selenium مربع حوار خيارات بيئة التطوير المتكاملة (IDE) مع معلومات حول المهلة الزمنية، والامتدادات، والأساسيات URL وإعدادات التسجيل المسماة

  • قيمة المهلة الزمنية الافتراضية. يشير هذا إلى الوقت الذي Selenium يجب أن ينتظر ظهور عنصر معين أو إمكانية الوصول إليه قبل أن يُصدر خطأً. القيمة الافتراضية للمهلة الزمنية هي 30000 مللي ثانية.
  • Selenium إضافات بيئة التطوير المتكاملة (IDE). هنا يمكنك تحديد الإضافات التي تريد استخدامها للتوسيع Selenium قدرات IDE. يمكنك زيارة addons.mozilla.org واستخدام "Selenium"ككلمة رئيسية للبحث عن ملحقات محددة.
  • تذكر القاعدة URL. أبقِ هذا محددًا إذا كنت تريد ذلك Selenium بيئة التطوير المتكاملة لتذكر القاعدة URL في كل مرة تقوم بتشغيله. إذا قمت بإلغاء تحديد هذا الخيار، Selenium سيتم تشغيل بيئة التطوير المتكاملة دائمًا بقيمة فارغة للأساس URL.
  • سجل التشغيل التلقائي. إذا قمت بالتحقق من هذا، Selenium سوف يقوم IDE بتسجيل إجراءات المتصفح الخاص بك على الفور عند بدء التشغيل.
  • بناة تحديد المواقع. هنا يمكنك تحديد الترتيب الذي يتم به إنشاء محددات المواقع أثناء التسجيل. تحديد المواقع هناك طرق لمعرفة ذلك Selenium IDE، أي عنصر واجهة مستخدم يجب أن يعمل عليه أمر سيليني. في الإعداد أدناه، عند النقر فوق عنصر بسمة معرف، سيتم استخدام معرف هذا العنصر كمحدد موقع نظرًا لأن "المعرف" هو الأول في القائمة. إذا لم يكن لهذا العنصر سمة معرف، Selenium سيبحث بعد ذلك عن سمة "الاسم" نظرًا لأنها تحتل المرتبة الثانية في القائمة. والقائمة تطول وتطول حتى يتم العثور على القائمة المناسبة.

يؤدي سحب أحد العناصر لأعلى أو لأسفل في هذه القائمة إلى تغيير السمة التي يبحث عنها المسجل أولاً.

قائمة منشئي محددات المواقع توضح ترتيب الأولوية المستخدم عند قيام المسجل بإنشاء محدد موقع

الفئة الأساسية URL البار

يتم حل كل عنوان نسبي في البرنامج النصي مقابل هذا الحقل.

الفئة الأساسية URL شريط من Selenium بيئة التطوير المتكاملة (IDE) التي تحتوي على عنوان التطبيق قيد الاختبار

  • يحتوي على قائمة منسدلة تتذكر جميع القيم السابقة ليسهل الوصول إليها.
  • سيأخذك الأمر "open" باللغة السيلينية إلى URL التي حددتها في القاعدة URL.
  • في هذه السلسلة التعليمية سوف نستخدم demo.guru99.com/test/newtours/ كقاعدة لنا URLإنه موقع لـ Mercury تطبيق "الجولات" هو تطبيق ويب تجريبي يُستخدم هنا لأغراض اختبار الويب. سنستخدم هذا التطبيق لأنه يحتوي على مجموعة كاملة من العناصر التي نحتاجها للمواضيع اللاحقة.
  • قاعدة URL يُعد مفيدًا جدًا في الوصول إلى النسبي URLلنفترض أن قاعدتك URL تم تعيين ل Mercury عنوان الجولات أعلاه. عند تنفيذ الأمر "open" مع القيمة المستهدفة "signup"، Selenium سيقوم IDE بتوجيه المتصفح إلى صفحة التسجيل. انظر الرسم التوضيحي أدناه.

فتح الأمر مع تسجيل الهدف النسبي الذي يتم حله مقابل القاعدة المكونة URL

شريط الأدوات

يحتوي شريط الأدوات على عناصر التحكم في التسجيل والتشغيل. فيما يلي قائمة بكل زر ووظيفته.

شريط تمرير سرعة التشغيل سرعة التشغيل. يتحكم هذا الخيار في سرعة تنفيذ نص الاختبار الخاص بك.
زر التسجيل التسجيل. يبدأ هذا الإجراء جلسة التسجيل أو ينهيها. يتم إدخال كل إجراء في المتصفح كأمر Selenese في المحرر.
زر تشغيل مجموعة الاختبارات الكاملة تشغيل مجموعة الاختبارات كاملة. سيؤدي هذا إلى تشغيل جميع حالات الاختبار المدرجة في لوحة حالات الاختبار بالتسلسل.
زر تشغيل حالة الاختبار الحالية تشغيل حالة الاختبار الحالية. سيؤدي هذا إلى تشغيل حالة الاختبار المحددة حاليًا فقط في لوحة حالات الاختبار.
زر الإيقاف المؤقت والاستئناف إيقاف مؤقت/استئناف. سيؤدي هذا إلى إيقاف التشغيل مؤقتًا أو استئنافه.
زر الخطوة خطوة. سيسمح لك هذا الزر بالدخول خطوة بخطوة إلى كل أمر في نص الاختبار الخاص بك.
تطبيق زر قواعد اللف تطبيق قواعد التجميع. هذه وظيفة متقدمة. تتيح لك تجميع أوامر سيلينيز معًا وتنفيذها كإجراء واحد.

جزء حالة الاختبار

لوحة حالات الاختبار التي تعرض حالات الاختبار المفتوحة مع ترميز لوني للنجاح والفشل وملخص التشغيل

  • In Selenium في بيئة التطوير المتكاملة (IDE)، يمكنك فتح أكثر من حالة اختبار واحدة في وقت واحد.
  • يعرض لك جزء حالة الاختبار قائمة حالات الاختبار المفتوحة حاليًا.
  • عند فتح مجموعة اختبار، ستعرض لوحة حالات الاختبار تلقائيًا جميع حالات الاختبار الموجودة فيها.
  • حالة الاختبار المكتوبة بخط غامق هي حالة الاختبار المحددة حاليًا
  • بعد التشغيل، يتم ترميز كل حالة اختبار بالألوان لتمثيل ما إذا كانت قد نجحت أم فشلت.
  • اللون الأخضر يعني "نجح".
  • اللون الأحمر يعني "فشل".
  • يوجد في الجزء السفلي ملخص لعدد حالات الاختبار التي تم تشغيلها وفشلت.

محرر

يمكنك اعتبار المحرر بمثابة المكان الذي تجري فيه جميع العمليات. وهو متوفر في عرضين: الجدول والمصدر.

عرض جدول

  • في معظم الأحيان، سوف تعمل على Selenium بيئة تطوير متكاملة تستخدم عرض الجدول.
  • هنا يمكنك إنشاء وتعديل أوامر لغة سيلينيز.
  • بعد التشغيل، يتم ترميز كل خطوة بالألوان.

محرر في عرض جدولي مع ترميز لوني للخطوات المنفذة بعد التشغيل

  • لإنشاء الخطوات، اكتب اسم الأمر في مربع النص "الأمر".
  • يعرض قائمة منسدلة بالأوامر التي تتطابق مع الإدخال الذي تكتبه حاليًاping.
  • Target هي أي معلمة (مثل اسم المستخدم وكلمة المرور) لأمر ما والقيمة هي قيمة الإدخال (مثل tom، 123pass) لتلك Targets.

أمر، Target وحقول القيمة الخاصة بـ Selenium محرر جداول بيئة التطوير المتكاملة

عرض المصدر

  • ويعرض الخطوات بتنسيق HTML (الافتراضي).
  • كما يسمح لك بتحرير البرنامج النصي الخاص بك تمامًا كما هو الحال في طريقة عرض الجدول.

يعرض المحرر في عرض المصدر نفس حالة الاختبار كجدول HTML Selenese

جزء السجل

تعرض لوحة السجل رسائل وقت التشغيل أثناء التنفيذ. وتوفر تحديثات فورية حول ما Selenium IDE يفعل.

يتم تصنيف السجلات إلى أربعة أنواع:

  • تصحيح - بشكل افتراضي، لا تُعرض رسائل التصحيح في لوحة السجل. تظهر فقط عند تصفيتها. وهي توفر معلومات تقنية حول ما Selenium IDE يفعل وراء الكواليس. قد يعرض رسائل مثل أنه تم تحميل وحدة معينة، أو استدعاء وظيفة معينة، أو وظيفة خارجية Javaتم تحميل ملف البرنامج النصي كملحق.
  • معلومات – يوضح الأمر Selenium يتم تنفيذ IDE حاليًا.
  • حذر – هذه رسائل تحذيرية تظهر في حالات خاصة.
  • خطأ – هذه رسائل خطأ يتم إنشاؤها عند Selenium فشل برنامج IDE في تنفيذ أمر ما، أو إذا لم يتحقق شرط محدد بواسطة أمر "التحقق" أو "التأكيد" لم تتحقق.

قائمة منسدلة في لوحة السجل تعرض أنواع رسائل التصحيح والمعلومات والتحذير والخطأ

يمكن تصفية السجلات حسب النوع. على سبيل المثال، إذا اخترت تحديد خيار "خطأ" من القائمة المنسدلة، فستعرض لوحة السجلات رسائل الخطأ فقط.

تمت تصفية لوحة السجل لعرض الأخطاء فقط، بحيث تبقى رسائل الأوامر الفاشلة فقط مرئية.

الجزء المرجعي

تعرض لوحة المراجع وصفًا موجزًا ​​لأمر Selenese المحدد حاليًا في المحرر. كما تعرض أيضًا وصفًا للمحدد والقيمة المستخدمة في هذا الأمر.

لوحة مرجعية تصف أمر Selenese المحدد مع وسيطات الهدف والقيمة الخاصة به

جزء عنصر واجهة المستخدم

عنصر واجهة المستخدم مخصص للمتقدم Selenium المستخدمين. يستخدم Javaيُستخدم تنسيق JSON لتعريف خريطة العناصرpingتوجد الوثائق والموارد في خيار "وثائق عناصر واجهة المستخدم" ضمن قائمة المساعدة في Selenium IDE

قائمة المساعدة الخاصة بـ Selenium بيئة التطوير المتكاملة مع مدخل توثيق عناصر واجهة المستخدم

يظهر أدناه مثال لشاشة عنصر واجهة المستخدم.

لوحة عناصر واجهة المستخدم التي تحتوي على خريطة عناصر JSON لتطبيق قيد الاختبار

جزء التراكمي

تتيح لك خاصية التجميع تنفيذ مجموعة من الأوامر في خطوة واحدة. تُسمى مجموعة الأوامر ببساطة "تجميعًا". وهي تستخدم بشكل مكثف... Javaمفاهيم النصوص البرمجية وعناصر واجهة المستخدم لصياغة مجموعة من الأوامر المشابهة لـ "الوظيفة" في لغات البرمجة.

تُعدّ عمليات التجميع قابلة لإعادة الاستخدام؛ أي يمكن استخدامها عدة مرات ضمن حالة الاختبار. ولأنها عبارة عن مجموعات من الأوامر مُدمجة في أمر واحد، فإنها تُساهم بشكل كبير في تقصير نص الاختبار.

تم اختصار عدة خطوات من لغة سيلينيز في أمر تجميع واحد في المحرر

يظهر أدناه مثال لكيفية ظهور محتويات علامة التبويب المجمعة.

لوحة قابلة للطي تعرض Javaتعريف البرنامج النصي لقاعدة التجميع القابلة لإعادة الاستخدام

لا يوجد نظير للوحات التجميع وعناصر واجهة المستخدم في الامتداد الحالي؛ أوامر التحكم في التدفق وتصدير التعليمات البرمجية تؤدي هذا الدور الآن.

الأسئلة الشائعة

يحتوي ملف واحد بامتداد .side على المشروع بأكمله - كل اختبار، وكل مجموعة اختبار، والأساس. URLيحل هذا محل النموذج القديم المتمثل في ملف HTML واحد لكل حالة اختبار، ويجعل من السهل الالتزام بالمشروع للتحكم في الإصدار.

نعم. يستخدم التشغيل داخل الإضافة المتصفح الذي تم تثبيته فيه، لكن مشغل سطر الأوامر يقوم بتنفيذ مشروع محفوظ على متصفحات أخرى ويتناسب مع مسار البناء، وهو ما لا يستطيع المشغل الموجود داخل المتصفح القيام به.

تتضمن بيئة التطوير المتكاملة الحالية أوامر التحكم في التدفق، بما في ذلك if وelse if وelse وwhile وtimes وdo وrepeat if وfor each. وهذا يشمل التفرع والحلقات.ping في نص مسجل بدون Javaتتطلب البرامج النصية حلولاً بديلة لميزة التجميع القديمة.

يخزن المسجل عدة مواقع مرشحة لكل عنصر. أثناء التشغيل، تُجرَّب البدائل حتى ينجح أحدها، لذا فإن تغيير المعرّف لا يؤدي بالضرورة إلى تعطل الخطوة. مع ذلك، فإن حالات الفشل المتكررة تعني ضرورة تعديل قائمة المواقع يدويًا.

يؤدي النقر بزر الماوس الأيمن على اختبار أو مجموعة اختبارات إلى عرض كود WebDriver لـ C# NUnit و C# xUnit، Java JUnit, Javaسكريبت موكا، Python بيتيست وRuby RSpec. يُضيف مفتاح تبديل اختياري التعليقات tracإعادة كل سطر تم إنشاؤه إلى خطوته المسجلة.

يُطبَّق التعلّم الآلي بشكل أساسي على أضعف جزء في الاختبارات المسجلة: المحددات. تقوم محركات الإصلاح الذاتي بترتيب عدة محددات مرشحة واستبدالها بمحدد سليم عند حدوث تغييرات في الترميز، وتقوم نماذج مماثلة بتجميع حالات الفشل المتكررة لفصل العيوب الحقيقية عن ضوضاء التوقيت.

يُعدّ هذا مناسبًا تمامًا لعملية التنظيف. فالكود المُصدّر عبارة عن دالة خطية طويلة، وسيقوم Copilot بإعادة هيكلته إلى كائنات صفحات، واستخراج البيانات المُضمّنة في الكود إلى وحدات الاختبار، واستبدال فترات التوقف الثابتة بفترات انتظار صريحة. Revاطلع على مواقع الأجهزة التي يحتفظ بها.

بمجرد أن تتطلب الاختبارات إعدادات مشتركة، أو ملفات بيانات، أو تقارير، أو إعادة استخدام عبر مجموعات الاختبار، فإن بيئة التطوير المتكاملة (IDE) ممتازة لإثبات سيناريو ما بسرعة؛ باستخدام التعليمات البرمجية Selenium الإطار هو ما يجعل مئات من تلك السيناريوهات قابلة للصيانة.

تلخيص هذه التدوينة بـ: