08:54 أسئلة وأجوبة مقابلات سيلينيوم – سبوتو - مدونة SPOTO - مواد دراسية مفيدة لدراسة شهادة تكنولوجيا المعلومات
preloader

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

عندما ينشئ المهندسون برمجيات، فإنهم يحتاجون إلى اختبارها. الاختبار هو الجزء الأكثر أهمية في دورة حياة البرمجيات التي تسمى دورة حياة تطوير البرمجيات (SDLC).
سيلينيوم هي أداة اختبار مؤتمتة شائعة. تُستخدم أداة الاختبار الآلي مفتوحة المصدر هذه لاختبار تطبيقات الويب عبر متصفحات مختلفة.
أسباب شعبية سيلينيوم كأداة اختبار هي كما يلي:
كنتيجة لذلك، تطرح أي شركة برمجيات على المتقدمين بعض الأسئلة المتعلقة بأداة سيلينيوم. تعتبر معرفة السيلينيوم ذات أهمية قصوى لمطوري البرمجيات والمهندسين.
مجموعة من الأسئلة التي تُطرح حول السيلينيوم مع إجاباتها مفيدة للمتقدمين للوظائف. تطرح لجنة المقابلة الشخصية بعض الأسئلة للتحقق من المعرفة الأساسية بالسيلينيوم. يمكن للمرشحين المهتمين الاطلاع على الأسئلة المتداولة وإجاباتها الواردة أدناه:
1. ما أنواع الاختبارات التي يدعمها سيلينيوم؟ اشرح لهم
يدعم سيلينيوم نوعين من الاختبارات. هما:
اختبار الانحدار
الاختبار الوظيفي
أ) اختبار الانحدار: يتم تنفيذ بعض حالات الاختبار بالفعل. في بعض الأحيان، يجب إعادة تنفيذها للتحقق مما إذا كانت الوظائف الحالية تعمل بشكل جيد. يشير اختبار الانحدار إلى مجموعة كاملة أو جزئية من حالات الاختبار التي تم تنفيذها بالفعل.
ب) الاختبار الوظيفي: ويتضمن التحقق من جميع وظائف التطبيق مع المواصفات اللازمة.
2. كيف يمكنك التفريق بين سيلينيوم 2.0 وكذلك سيلينيوم 3.0؟
يعمل سيلينيوم 2.0 على تبسيط تطوير الاختبارات الآلية لتطبيقات الويب. وهو يمثل الجمع بين مشروع سيلينيوم ومشروع Webdriver.
سيلينيوم 3.0 هو نسخة موسعة من سيلينيوم 2.0. وهو أكثر استقرارًا من الإصدار السابق. تم تضمين بعض إصلاحات الأخطاء في ثناياه عوامل.
3- ما هي مكونات مجموعة سيلينيوم؟ اشرح لهم
مكونات مجموعة السيلينيوم هي كما يلي:
سيلينيوم للتحكم عن بعد
سيلينيوم ويب درايفر
شبكة سيلينيوم
سيلينيوم آي دي إي
أ) سيلينيوم للتحكم عن بعد: يسمح هذا الخادم للمستخدمين بكتابة اختبارات التطبيق بلغات برمجة مختلفة، ويقبل هذا الخادم الأوامر من البرنامج النصي للاختبار. ثم يرسل نصوص الاختبار إلى المتصفح كأوامر نصية من سيلينيوم جافا الأساسية.
ب) سيلينيوم ويب درايفر: تساعد واجهة البرمجة هذه على إنشاء حالات الاختبار وإصلاحها. يضمن وجود أحكام للعمل على عناصر الويب. نظرًا لأنه يتمتع بإمكانية العمل أصلاً مع متصفحات الويب، فإنه لا يتطلب خادمًا جديدًا.
ج) شبكة السيلينيوم: تم تصميمه لتوزيع الأوامر على مجموعة متنوعة من الأجهزة في وقت واحد. لذلك، يسمح بتنفيذ الاختبارات على العديد من المتصفحات وأنظمة التشغيل بشكل متوازٍ.
د) Selenium IDE: تم تطوير هذا المكون الإضافي لفايرفوكس وكروم لتسريع إنشاء البرامج النصية التلقائية. وهو مفيد لتسجيل إجراءات المستخدم على متصفح الويب. ثم يقوم بتصدير الأعمال كنص برمجي قابل لإعادة الاستخدام.
4. هل اختبار السيلينيوم محدود بطريقة ما؟
اختبار السيلينيوم له حدوده مثل:
أ) المعرفة الأساسية بلغات البرمجة ضرورية: سائق الويب سيلينيوم ويتوقع أن يكون لدى المستخدمين معرفة أساسية بلغة البرمجة.
ب) إنه يختبر تطبيقات الويب فقط: nيختبر سيلينيوم تطبيقات الويب فقط. وهو غير متوافق مع تطبيقات الجوال أو تطبيقات سطح المكتب. يجب أن يتكامل مع أدوات الطرف الثالث مثل Appium لاختبار تطبيقات الجوال وتطبيقات سطح المكتب.
ج) يقدم دعمًا محدودًا لاختبار الصور.
د) عدم وجود دعم فني يمكن الاعتماد عليه: nسلينيوم أداة مفتوحة المصدر. لذلك، ليس لديها دعم فني مخصص لحل استفسارات المستخدمين.
5. ماذا تقصد بسياسة الأصل الواحد؟ كيف تتعاملون معها؟
يمكننا شرح سياسة الأصل نفسه كميزة تم اعتمادها لأسباب أمنية. وفقًا لهذه السياسة، يسمح متصفح الويب للنصوص البرمجية لصفحة ويب بالوصول إلى محتويات صفحة ويب أخرى. ومع ذلك، يجب أن يكون لكلا صفحتي الويب نفس الأصل.
تمنع سياسة الأصل نفسه أيضًا البرنامج النصي الخبيث لصفحة ويب من الوصول إلى البيانات الحساسة لصفحة ويب أخرى.
6. ما هي أنواع الانتظار التي يدعمها برنامج تشغيل الويب؟ اشرحها
يدعم برنامج تشغيل الويب ثلاثة أنواع من الانتظار:
الانتظار الضمني
الانتظار الصريح
انتظار صريح
أ) الانتظار الضمني: يأمر هذا الأمر سيلينيوم بالانتظار لبعض الوقت قبل عرض استثناء “لا يوجد مثل هذا الأمر”.
ب) الانتظار الصريح: يخبر هذا الأمر برنامج التشغيل ثمWeb بالانتظار لبعض الشروط قبل نشر استثناء “عنصر غير مرئي”.
ج) الانتظار الصريح: يخبر هذا الأمر برنامج تشغيل الويب بالانتظار لبعض الوقت قبل عرض استثناء “عنصر غير مرئي”.
7. ما الذي تقصده بـ “سيلينس”؟ كيف يمكنك تصنيفها؟
تُعرف مجموعة من أوامر سيلينيوم المستخدمة لاختبار تطبيق ويب معين باسم سيلينيز. يقوم المختبر باختبار ما إذا كان أجاكس يعمل، وما إذا كان هناك كائن ما على واجهة المستخدم، والروابط المعطلة من خلال سيلينيس.
يصنف سيلينيسيس إلى ثلاثة أجزاء:
أ) الأنشطة: وتتألف من الأوامر التي تتفاعل مباشرة مع التطبيق.
ب) الملحقات: تسمح للمستخدمين بتخزين بعض القيم في متغير محدد من قبل المستخدم.
ج) التأكيدات: تتحقق من الحالة الحالية للمطالبة بمساعدة حالة متوقعة.
8. ماذا تقصد بمحددات الويب؟
الأمر الذي يخبر مُعرّف Selenium IDE بعناصر واجهة المستخدم الرسومية (مثل مربعات الاختيار ومربعات النص) التي يجب العمل عليها يُعرف باسم محدد الموقع. بعبارة أخرى، يحدد محدد الموقع سلسلة العمل.
9. كيف يمكن التفريق بين أمر driver.close وأمر driver.quit؟
Driver.close هو أمر يغلق النافذة الحالية للمتصفح. إذا كان هناك العديد من النوافذ مفتوحة في نفس الوقت، فسيقوم بإغلاق النافذة الحالية ذات التركيز.
أما Driver.quit فهو أمر يغلق جميع نوافذ المتصفح المفتوحة في نفس الوقت.
10. ما فائدة المسار X؟
يستخدم X-path لتحديد موقع WebElement في صفحات الويب. كما أنه يساعد في تحديد العناصر الديناميكية.
11. كيف يمكنك التفريق بين أوامر التحقق وأوامر التأكيد؟
يسمح لنا أمر التأكيد بالتحقق من وجود عنصر معين في الصفحة من عدمه. إذا لم يتم العثور على الجزء المؤكد، يتوقف التحقق تلقائيًا. بمجرد عدم العثور على التحقق، يتم إنهاء الاختبار.
ثم يتم تنفيذ أمر تأكيد حتى لو لم يكن عنصر معين غير متوفر.nأيضًا، إذا فشل أي اختبار، فمن المضمون أن جميع الأوامر ستعمل.
12. لماذا يجب على المختبرين اختيار Selenium بدلاً من QTP؟
يتميز سيلينيوم بمزايا معينة عن QTP. وهي كالتالي:
أ) QTPnis أداة تجارية. من ناحية أخرى، سيلينيوم أداة مفتوحة المصدر.
ب) نسلينيوم يدعم متصفحات الويب المختلفة مثل فايرفوكس وإنترنت إكسبلورر أنظمة تشغيل مثل ويندوز وماك. أما QTP فيقتصر على إنترنت إكسبلورر على نظام ويندوز.
ج) يستخدم سيلينيوم بشكل أساسي لاختبار التطبيقات المستندة إلى الويب. يستخدم QTP لاختبار تطبيقات الخادم-العميل.
د) يدعم سيلينيوم لغات برمجة متعددة مثل روبي وبايثون. ه) يدعم QTP البرنامج النصي VB فقط.
13- ما هي المعلمات الأربعة التي تحتاج إلى تمريرها في سيلينيوم؟
المعلمات الأربعة التي نحتاج إلى تمريرها في سيلينيوم هي كما يلي؟
أ) المنفذ
ب) المضيف
ج) المتصفح
د) عنوان URL
14. ماذا تقصد بالإطار المستند إلى البيانات والإطار المستند إلى الكلمات الرئيسية؟
في الإطار القائم على البيانات، يتم الاحتفاظ ببيانات الاختبار منفصلة. يتم الاحتفاظ بها خارج البرامج النصية للاختبار ويتم قراءتها باستخدام ملفات خارجية، مثل ملفات Excel.
أما في الإطار المدفوع بالكلمات المفتاحية فيجب تطوير جداول البيانات والكلمات المفتاحية بشكل مستقل عن أي أتمتة للاختبار.
15. ما هي الاختلافات بين سيلينيوم وبورلاند سيلك؟
تتمثل الاختلافات بين سيلينيوم وبورلاند سيلك فيما يلي:
أ) سيلينيوم هو أداة أتمتة اختبار مجانية. بورلاند سيلك ليست أداة اختبار مجانية.
ب) يستخدم Silkntest لغة اختبار النص البرمجي. يستخدم سيلينيوم لغات برمجة متعددة مثل جافا وبيرل.
ج) تدعم سيلينيوم العديد من المتصفحات مثل فايرفوكس وإنترنت إكسبلورر وسفاري.
د) نسلينيوم يستخدم فقط لتطبيقات الويب. من ناحية أخرى، يستخدم Borland Silk لتطبيقات خادم العميل.
16- ماذا تقصد بمستودع الكائنات؟
يسمح مستودع الكائنات للمختبر بتخزين جميع الكائنات المستخدمة في البرامج النصية في موقع مركزي. وهو جزء لا يتجزأ من جميع أتمتة واجهة المستخدم. ولا يسمح بتوزيع الأغراض المستخدمة في الكتابات بشكل عشوائي في جميع أنحاء البرنامج النصي للاختبار.
17. ما هي “المستمعون” في برنامج تشغيل سيلينيوم ويب؟
يتم تعريف أحداث معينة في البرنامج النصي لسيلينيوم. تتمثل وظيفة “المستمعين” في برنامج تشغيل الويب Selenium Web Driver في الاستماع إلى تلك الأحداث والتصرف وفقًا لذلك. فيما يلي نوعان رئيسيان من المستمعين:
أ) مستمعو سائق الويب
ب) مستمعو nTestNG.
يسمح للأقسام ذات الصلة بتقارير TestNG.
18. لماذا تعتبر معالجة الجلسة ضرورية أثناء العمل مع سيلينيوم؟
عندما يقوم المختبر بتنفيذ اختبار، يحتاج برنامج تشغيل الويب Selenium إلى التفاعل مع المتصفح. وبهذه الطريقة، يضمن تنفيذ الأوامر.
قد يقوم شخص ما بتنفيذ برنامج نصي مختلف في نفس الجهاز قبل انتهاء التنفيذ الحالي. تسهل معالجة الجلسة التعامل مع مثل هذه الحالات.
19. ما هو IntelliJ؟
IntelliJ هو IDE. يساعد الأشخاص على كتابة كود أسرع لـ Selenium. الكود المكتوب بواسطة IntelliJ ذو جودة جيدة أيضًا.
20. ما المقصود بالقدرة المطلوبة؟ كيف تكون مفيدة في سيلينيوم؟
يتم استخدام سلسلة من أزواج القيم لتخزين خصائص المتصفح. تتضمن الخصائص اسم المتصفح، ومسار برنامج تشغيل المتصفح المتبع في النظام، وإصدار المتصفح. تُعرف هذه السلسلة من أزواج القيم هذه باسم القدرة المطلوبة. وهي تخزن هذه الخصائص للمتصفح للنظر في السلوك في وقت التشغيل.
دعونا نناقش كيف تكون القدرة المطلوبة مفيدة لـ Selenium:
أ) قد يرغب شخص ما في تشغيل حالات الاختبار على متصفحات مختلفة لها إصدارات مختلفة وأنظمة تشغيل مختلفة. تكون القدرة المرغوبة مفيدة عندئذٍ.
ب) يمكن استخدام القدرة المرغوبة لتكوين مثيل برنامج تشغيل برنامج تشغيل Selenium Web.
21. ما المقصود بالتعبيرات العادية؟ كيف يمكن استخدام التعبيرات العادية في سيلينيوم؟
التعبير العادي هو سلسلة فريدة من النصوص المستخدمة لوصف نمط بحث. يمكن استخدام التعبير العادي في Selenium IDE من خلال كلمة رئيسية “regexp” كبادئة للقيمة. يجب أيضًا تضمين النماذج لاستخلاص الفوائد المتوقعة.
22. كيف تشرح الامتداد الأساسي؟
توفر مكتبة وظائف سيلينيوم بعض الدوال الافتراضية. إذا أراد شخص ما توسيع هذه الدوال الافتراضية، فإنه يحتاج إلى إنشاء امتداد أساسي. يُعرف الامتداد الأساسي أيضًا باسم امتداد المستخدم. يمكن أيضًا تنزيل الامتدادات الأساسية الجاهزة التي أنشأها عشاق سيلينيوم.
1. ماذا تقصد ب POM؟
POM تعني نموذج كائن الصفحة. وهو نمط تصميم يساعد على إنشاء مستودعات كائنات لعناصر الويب. يسمح مستودع الكائنات بتشغيل العديد من حالات الاختبار عليه. يحسن Pom من سهولة قراءة الشيفرة وإعادة استخدامها.
2. هل من الممكن أتمتة Captcha؟
لا، لا يسمح سيلينيوم بأتمتة Captcha. الغرض من Captcha هو منع البرامج الآلية والروبوتات من الوصول إلى المعلومات الحساسة. لذا، فإن الغرض الكامل من الكابتشا هو إبطال الغرض من الكابتشا إذا سمح سيلينيوم بأتمتة الكابتشا. يحتاج مهندس اختبار الأتمتة إلى كتابة الكابتشا يدويًا. يمكن ملء جميع الحقول الأخرى تلقائيًا.
3. كيف يمكن لـ Selenium التعامل مع النوافذ المنبثقة التي تعتمد على Windows؟
Selenium ليس داعمًا أصليًا لميزات Windows. لقد تم تصميمه للتعامل مع تطبيقات الويب. يجب دمج السيلينيوم مع أدوات الطرف الثالث مثل الروبوتات لإدارة الوظائف المستندة إلى ويندوز.
4- لماذا يفشل اختبار Selenium IDE؟
يفشل اختبار Selenium IDE للأسباب المذكورة أدناه:
لم يتم إنشاء العنصر الذي حاول Selenium IDE الوصول إليه.
عندما تغير محدد الموقع، وتعذر على Selenium IDE تحديد موقع العنصر.
لم يظهر العنصر الذي كان Selenium IDE يحاول الوصول إليه على صفحة الويب.nفي غضون ذلك، انتهت مهلة العملية.
5. لماذا من الأفضل اختيار Python بدلاً من Java في Selenium؟
أ) يقبل Selenium لغات برمجة مختلفة مثل Java و Python. ومع ذلك، فإن جافا أفضل من بايثون. الأسباب وراء ذلك هي كما يلي:
ب) nتعمل برامج nPython بشكل أسرع من برامج Java.
ج) قد تستخدم nPython الكتابة الديناميكية. من ناحية أخرى، تستخدم جافا الكتابة الثابتة.
د) نبايثون أكثر وضوحًا من جافا.
6. ما نوع واجهة برمجة تطبيقات جافا اللازمة لإنشاء تقارير PDF؟
هناك حاجة إلى واجهة برمجة تطبيقات جافا IText لإنشاء تقارير PDF.
7. لماذا من الصعب التعامل مع مكالمات أجاكس في برامج تشغيل سيلينيوم ويب؟
يواجه الأشخاص تحديات متعددة أثناء التعامل مع مكالمات Ajax في برامج تشغيل Selenium Web. وهي كالتالي:
أ) يتمتع المطورون بالحرية الكاملة لإجراء تغييرات على تطبيق Ajax. وهذا يجعل عملية الاختبار معقدة.
ب) في كثير من الأحيان، يتم استخدام أمر الإيقاف المؤقت للتعامل مع مكالمة أجاكس. أمر الإيقاف المؤقت يجعل استدعاء Ajax بطيئًا للغاية. لذلك، يستغرق وقت الاختبار فترة طويلة جدًا.
ج) من الصعب قياس مدى خطورة تطبيقات أجاكس المحددة.
غالبًا ما تستخدم أدوات الاختبار مثل Ajax تقنيات مختلفة من الترميز لإرسال بيانات POST. لذلك، يصبح من الصعب على أدوات الاختبار مثل Ajax إنشاء بيانات طلب الاختبار الآلي.
8. كيف يكون من المفيد استخدام GIT Hub لـ Selenium؟
تتم مناقشة مزايا استخدام GIT HUB لسيلينيوم أدناه:
يمكن للعديد من الأشخاص الذين يعملون على نفس المشروع تحديث تفاصيل المنتج ذات الصلة وإعلام أعضاء الفريق الآخرين في نفس الوقت. يجعل تتبع التقدم المحرز أسهل.
9- كيف يمكن للمختبر استخدام نوافذ متعددة في وقت واحد في سيلينيوم؟
يمكن للمستخدم استخدام أمر يسمى “تحديد نافذة” للتبديل بين النوافذ. يستخدم هذا الأمر عنوانًا يسمى “نوافذ” لتحديد النافذة التي يحتاج إلى التبديل بينها
10. هل يمكنك ذكر أي قيود تقنية أثناء استخدام Selenium RC؟
سيلينيوم غير مصرح له بالوصول إلى أي شيء خارج المتصفح. إنه تحدٍ تقني يواجهه العديد من الأشخاص أثناء استخدامهم سيلينيوم آر سي.
هل لديك أي أسئلة في مقابلة سيلينيوم لم تتم الإجابة عليها هنا؟ يرجى زيارة سبوتو وملء نموذج الاستفسار وسنحاول الإجابة على الجميع.
لدينا خبير في هذا المجال يقوم بتوضيح أجزاء معينة من التعليمات البرمجية أثناء شرح كيفية الإجابة على الأسئلة. إذا كنت ترغب في الشروع في رحلتك كمهندس أتمتة اختبار، فإليك دورة تدريبية معتمدة ستكون مفيدة لك. اطلع على الدورة التدريبية الخاصة بـ SPOTO Selenium. صُمم هذا التدريب لتدريب المطورين والمختبرين اليدويين على تعلم كيفية أتمتة تطبيقات الويب باستخدام إطار عمل قوي، ودمجها في عمليات DevOps الخاصة بالمؤسسة، ومساعدتك على إتقان مفاهيم مهمة مثل TestNG وSelenium IDE وSelenium Grid.
SPOTO هي مزود معترف به عالميًا لمجموعة واسعة من الخدمات الاحترافية المصممة لتلبية الاحتياجات المتنوعة للمؤسسات في جميع أنحاء العالم. نحن متخصصون في التدريب التقني والتدريب على الأعمال، وتطوير تكنولوجيا المعلومات وحلول البرمجيات، وخدمات اللغات الأجنبية، والتعلم الرقمي، وتوفير الموارد والتوظيف، والاستشارات. يتجلى التزامنا الثابت بالتميز من خلال شهادات الأيزو 9001 و27001 وCMMIDEV/3، التي تؤكد على معاييرنا الاستثنائية. وبفضل سجلنا الحافل بالنجاحات الذي يمتد لأكثر من عقدين من الزمن، فقد قدمنا خدماتنا بفعالية لأكثر من 4000 مؤسسة في جميع أنحاء العالم.

About the Author

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

Related Posts