29 أسئلة وأجوبة مقابلة السيلينيوم المتداولة

نشرت: 2022-12-09

تمر تطبيقات البرامج بمراحل مختلفة قبل إصدارها ليستخدمها المستهلك النهائي.

يعد الاختبار من بين أهم البتات في SDLC (دورة حياة تطوير البرامج) لأنه يحدد الأخطاء ويتحقق مما إذا كان التطبيق يعمل كما هو متوقع.

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

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

فيما يلي أسئلة وأجوبة مقابلة السيلينيوم التي من المحتمل أن تصادفها:

ما هو اختبار الأتمتة؟

بعبارات بسيطة ، اختبار الأتمتة هو عملية أتمتة عملية كتابة وتنفيذ اختبارات البرامج باستخدام مجموعة الاختبار الآلي أو بدون تدخل يدوي. يسمح اختبار الأتمتة للمختبرين باستخدام أداة منفصلة لتنفيذ مهام الاختبار بشكل متكرر.

ما هي فوائد اختبار الأتمتة؟

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

ما هو السيلينيوم؟

السيلينيوم عبارة عن مجموعة مفتوحة المصدر ومجانية لاختبار الأتمتة القائمة على واجهة المستخدم على الويب والتي طورها Jason Huggins في عام 2004. وقد جعل وجود مجتمع قوي السيلينيوم أحد أكثر مجموعات اختبار البرامج الآلية شيوعًا. يتم دعم Selenium Suite على العديد من المتصفحات والأنظمة الأساسية.

ما هي الأشكال المختلفة للسيلينيوم؟

السيلينيوم ليس مجرد أداة اختبار ولكنه مجموعة من عدة أدوات. فيما يلي الأشكال المختلفة للسيلينيوم ؛

  • بيئة التطوير المتكاملة للسيلينيوم (IDE)
  • سيلينيوم ويب درايفر
  • جهاز التحكم عن بعد السيلينيوم (RC)
  • شبكة السيلينيوم

ما هي لغات البرمجة التي يدعمها السيلينيوم؟

  • بايثون
  • جافا
  • سي شارب
  • جافا سكريبت
  • روبي
  • بي أتش بي
  • بيرل

ما أنواع الاختبارات التي يدعمها السيلينيوم؟

  • اختبار الانحدار
  • الاختبار الوظيفي

ما هو سيلينيوم ويب درايفر؟

تم تكليف Selenium WebDriver بالتواصل مع متصفحات الويب. تعتمد هذه الأداة أيضًا على توافقها الأصلي لأتمتة المهام المختلفة.

ما هو السيلينيوم IDE؟

Selenium IDE هو مكون إضافي لمتصفح Firefox يعمل كأداة تسجيل وتشغيل. تم إنشاء هذا البرنامج المساعد كحل لتسريع إنشاء البرامج النصية للأتمتة.

ما هي شبكة السيلينيوم؟

تتيح هذه الأداة للمستخدمين توزيع تنفيذ الاختبار على بيئات وأنظمة أساسية متعددة بشكل متزامن.

ما هو السيلينيوم RC (جهاز التحكم عن بعد)؟

RC هي أداة تسمح لأي شخص بإنشاء نصوص اختبار بلغة البرمجة التي يريدها. تتيح هذه الأداة أيضًا للمستخدمين تنفيذ برامج نصية تجريبية ضمن مجموعة كبيرة من المتصفحات.

ما هو المقصود بسيلينيس؟

يحتوي Selenium IDE على لغة تسمى Selenese تُستخدم لكتابة أوامر السيلينيوم. تساعد هذه الأوامر السيلينيوم في فهم العمليات أو الإجراءات التي يجب القيام بها.

ما هي أنواع السيلينيز؟

  • الإجراءات . هذه هي الأوامر التي تتلاعب بحالة التطبيق. "اكتب هذا المربع" و "انقر فوق هذا الارتباط" أمثلة على الإجراءات.
  • الموصلات . هذه الأوامر حالة التطبيق وتخزين النتائج في المتغيرات.
  • التأكيدات . هذه هي الأوامر التي تمكن المختبر من التحقق من حالة التطبيق.

ما هي طرق تحديد موقع عنصر في السيلينيوم؟

  • بطاقة تعريف
  • ClassName
  • اسم
  • اسم العلامة
  • LinkText
  • PartialLinkText
  • اكسباث
  • محدد CSS
  • DOM

ما هو XPath؟

يحدد XPath موقع عنصر ويب بناءً على مسار لغة التوصيف الموسعة. يقوم XML بتخزين البيانات التعسفية وتنقلها.

"/" و "//" في XPath. ماهو الفرق؟

"/" أو slas h المفرد ينشئ XPath بمسار مطلق. وبالتالي ، يتم إنشاء XPath لبدء التحديد من عقدة البداية / عقدة المستند.

يتم استخدام "//" أو الشرطة المائلة المزدوجة لإنشاء XPath بمسار نسبي. وبالتالي ، أنشأ XPath تحديد يبدأ من أي مكان داخل المستند.

ما هو المطلق XPath؟

يبدأ XPath المطلق بشرطة مائلة واحدة "/". مثل هذا المسار له مسار كامل من الجذر إلى العنصر الذي نريد تحديده.

ميّز بين findElement () و findElements ()

  • findElements (): يستخدم آلية تحديد الموقع المحددة للعثور على جميع العناصر الموجودة في الصفحة الحالية ويعيد قائمة بجميع عناصر الويب.
  • findElement () : يبحث عن العنصر الأول داخل الصفحة الحالية باستخدام آلية تحديد الموقع المحددة ويعيد عنصر ويب واحدًا فقط.

ما أنواع التعليقات التوضيحية المستخدمة في عنصر السيلينيوم؟

  • BeforeSuite
  • قبل الاختبار
  • قبل الفصل
  • قبل الطريقة
  • حالة اختبار
  • بعد الطريقة
  • بعد الحصة
  • بعد الاختبار
  • أفترسويت

ما هي التأكيدات في السيلينيوم؟

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

ما هي أوامر التأكيد والتحقق؟

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

ما هي سياسة نفس الأصل ، وكيف يتعامل معها السيلينيوم؟

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

يستخدم السيلينيوم طريقة حقن وكيل لتنفيذ سياسة نفس المصدر. في هذا الإعداد ، سيعمل خادم Selenium بمثابة وكيل HTTP تم تكوينه بواسطة العميل بين التطبيق قيد الاختبار والمتصفح. سيؤدي حقن الوكيل هذا إلى إخفاء AUT من خلال عنوان URL وهمي.

ما هي ميزة الإيقاف المؤقت في السيلينيوم IDE؟

Pause هو أمر انتظار سيلينيوم IDE يؤخر تنفيذ الاختبار الآلي لفترة محددة. يُشار إلى الانتظار بالمللي ثانية ، مما يعني أنه يجب عليك إدخال 3000 إذا كنت تريد الانتظار لمدة 3 ثوانٍ.

لماذا تفشل اختبارات السيلينيوم IDE؟

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

ما هو TestNG وما هي بعض ميزاته؟

TestNG هو إطار عمل لأتمتة الاختبار مستوحى من JUnit و NUnit. NG ، الجيل التالي ، هي أداة مفتوحة المصدر ومجانية.

هذه بعض ميزات TestNG ؛

  • أنواع مختلفة من التأكيدات.
  • يسمح للمستخدمين بإجراء الاختبارات بالتوازي.
  • يمكنك إجراء اختبارات تعتمد على بعضها البعض باستخدام سمات "تعتمد على الأسلوب" و "تعتمد على المجموعات".
  • ينفذ اختبارات تعتمد على البيانات.
  • يمكنك تجميع الاختبارات المختلفة.

ما الفرق بين الانتظار الضمني والانتظار الصريح؟

  • يخبر الانتظار الضمني WebDriver بالانتظار لفترة معينة قبل طرح استثناء. القيمة الافتراضية هي 0 ، وبمجرد تعيين الوقت ، سينتظر WebDriver حتى ينقضي لطرح استثناء.
  • يخبر Explicit Wait لـ WebDriver أن ينتظر شروطًا معينة أو ExpectedConditions قبل طرح استثناء "ElementNotVisibleException". الانتظار الصريح هو انتظار "ذكي" لا ينطبق إلا على عناصر محددة.

ما هو مستودع الكائنات؟

مستودع الكائنات هو مجموعة من أزواج القيمة الرئيسية في برنامج نصي لاختبار واجهة المستخدم الرسومية الآلي يخفف عبء صيانة البرنامج النصي للاختبار. المفتاح في مثل هذه الحالة هو اسم منطقي يحدد الكائنات وكذلك القيم التي تأتي مع خصائص فريدة تحدد الكائنات على الشاشة.

إنه أيضًا موقع مركزي حيث يتم تخزين جميع البيانات وإدارتها.

ما هي الاستثناءات المختلفة التي يمكن أن تصادفها في برنامج تشغيل الويب السيلينيوم؟

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

هذه هي الاستثناءات الرئيسية في Selenium Web Driver؛

  • NoSuchWindowException. يحاول WebDriver التبديل إلى نافذة غير صالحة (غير متوفرة).
  • NoSuchElementException. يحدث عندما يتعذر الوصول إلى عنصر.
  • NoAlertPresentException. يحدث هذا الاستثناء عند محاولة التبديل إلى عدم وجود تنبيه مقدم.
  • TimeoutException. الأمر المحدد لم ينته خلال الوقت المحدد.
  • ElementNotVisibleException.
  • ElementNotSelectableException . يحدث هذا الاستثناء عندما يتم تعطيل عنصر (لا يمكن تحديده أو النقر فوقه) على الرغم من توفره على DOM.
  • SessionNotFoundException. WebDriver ، في هذه الحالة ، يعمل فور إغلاق المستعرض.

قائمة أنواع مختلفة من محددات المواقع

  • هوية شخصية
  • اسم
  • اسم الطبقة
  • اسم العلامة
  • linkText
  • نص جزئي
  • محدد CSS
  • XPath

ما هي نقاط التوقف ونقاط البداية؟

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

تغليف

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