كيفية إنشاء تقارير المدى في السيلينيوم

نشرت: 2021-06-21

المكتبة مفتوحة المصدر المستخدمة لأتمتة الاختبار في السيلينيوم هي ExtentReports. أطر الاختبار يمكن دمج NUnit و JUnit وما إلى ذلك مع المكتبة. يتم إنشاء التقارير المضمنة في السيلينيوم من خلال أطر عمل TestNG و JUnit ، لكن تقارير Extent لا تزال الخيار الأول لمختبري أتمتة السيلينيوم. تعطي تقارير المدى في السيلينيوم مزيدًا من التبصر في تنفيذ البرامج النصية للأتمتة. تم تصوير النتائج على شكل مخططات دائرية وهي في الأساس مستندات HTML. هي تفاصيل مثل اللقطات ، ويمكن إنشاء سجلات مخصصة من خلال المكتبة.

بعد التشغيل الناجح للاختبار الآلي ، يجب على المختبرين إنشاء تقرير بتنفيذ الاختبار. يتم توفير تقرير افتراضي بواسطة TestNG ، ولكن لم يتم توفير التفاصيل. مع إمكانية تطبيق ExtentReport API ، يمكن إنشاء تقارير تفاعلية من خلال تكوينات بسيطة. تدعم المكتبة أطر Java و .Net مثل JUnit و NUnit و TestNG وما إلى ذلك.

تبعية تقرير المدى المخضرم

مصدر

تتكون تقارير مدى السيلينيوم من فئتين:

جدول المحتويات

1. فئة ExtentReports

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

2. فئة ExtentTest

يتم تسجيل خطوات الاختبار من خلال فئة ExtentTest في تقارير HTML التي تم إنشاؤها من خلال الطريقة المذكورة أعلاه.

3. مدى HtmlReporter

يتم إنشاء ملف HTML بواسطة هذه الفئة.

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

  • startTest: يتم تنفيذ الشروط المسبقة للحالة في الاختبار
  • endTest: يتم تنفيذ الشروط اللاحقة للحالة في الاختبار.
  • طريقة السجل: يتم تسجيل حالة كل خطوة في الاختبار في تقرير HTML الذي تم إنشاؤه من خلال السجل.
  • تدفق: يتم إنشاء تقرير جديد يزيل البيانات من تقرير سابق.

تُستخدم القيم التالية للإشارة إلى حالة الاختبار: PASS و SKIP و FAIL و INFO.

كيفية إنشاء تقارير المدى

بعض المتطلبات الأساسية لإنشاء تقرير المدى هي:

  • التثبيت المسبق وإعداد Java.
  • تم تركيب TestNG.
  • تنزيل ملفات تقرير المدى (الإصدار 2.41.2).
  • شرط مدى- config.xml الذي يسمح بتكوين تقرير HTML.

الخطوات الأساسية المطلوب اتباعها لإنشاء تقارير المدى هي:

  • سيتم إنشاء مشروع اختبار.
  • حجم ملف جرة التقرير الذي سيتم تنزيله.
  • يضاف ملف جرة تقرير المدى إلى المشروع.
  • يتم إنشاء فئة مطبقة.

خطوات إنشاء تقرير النطاق

  • يمكن إنشاء تقارير المدى في WebDriver للسيلينيوم من خلال استيراد ملف jar وهو scalereports-java-2.41.2.jar. يجب استخراج محتويات ملف jar في دليل بمجرد تنزيله.
  • تضاف ملفات الجرة المستخرجة من ملف ZIP الذي تم تنزيله إلى مشروع البناء. يستخدم الخيار Build Path -> Configure Build Path.
  • تم إنشاء فئة Java حديثًا للمدى الذي تم الإبلاغ عنه من خلال الكود التالي.

مصدر

شرح الكود

باستخدام طريقة startTest ، يبدأ تنفيذ الاختبار. يتم تهيئة موضوع تقارير المدى. يستخدم كائن تقرير المدى أي مسار معرف من قبل المستخدم كمعامل يتم تمريره إليه.

beforeclass: يتم توضيح استخدام تقارير المدى بواسطة الكود.

test: الإجراءات التالية مؤتمتة من خلال هذه الفئة:

  • فتح متصفح الكروم من خلال URL www.google.com .
  • يجب التحقق من صحة عنوان الصفحة بالقيمة كما هو متوقع بمجرد فتحها.
  • يجب تسجيل حالة حالة الاختبار على أنها PASS أو FAIL باستخدام طريقة سجل تقارير المدى.

afterclass: كود تنفيذ حالة اختبار الشروط اللاحقة مدرج في هذه الفئة. يتضمن رمز نهاية الاختبار أو تقرير التنظيف. بدون استخدام طريقة flush () ، لن يتم إنشاء تقارير المدى في السيلينيوم .

التقاط لقطات في تقارير المدى

1. من خلال طريقة الالتقاط

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

مصدر

2. شرح الكود

  • يتم التقاط WebDriver السيلينيوم الحالي كلقطة شاشة من خلال طريقة getScreenShotAs (). ثم يتم تخزينها في أشكال مختلفة من الإخراج.

ملف scrFile = ((TakesScreenshot) سائق) .getScreenshotAs (OutputType.File) ؛

  • يتم إرجاع كائن من الملف من خلال طريقة getScreenShotAs وتخزينه في متغير من الملف. لاستخدام هذه الطريقة ، من الضروري إرسال مثيل برنامج تشغيل الويب لأخذ لقطة شاشة.

File Dest = ملف جديد (“scr /../ Errimages /” + System.currentTimeMillis () + “.png”) ؛

  • يتم إنشاء مجلد باسم "ErrImages" داخل المجلد "src" من خلال الكود أعلاه. يتم حفظ الملف في المجلد الذي تم إنشاؤه باسم الملف كوقت النظام الحالي.

String errflpath = Dest ، getAbsolutePath () ،

Fileutils.copyFile (scrFile، Dest) ،

عودة

  • يتم نسخ صور الخطأ التي تم إنشاؤها في مجلد وجهة.

3. طريقة التسجيل

  • يتم استخدام طريقة مضمنة في طريقة السجل. يتم استخدام addScreenCapture لمدى الفئة لالتقاط لقطة شاشة ثم إلحاقها بتقارير المدى التي تم إنشاؤها.

test.log (LogStatus.Fail ، test.addScreenCapture (التقاط (سائق)) + "فشل الاختبار") ؛

مزايا تقارير المدى

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

مثال على تقارير E xtent في السيلينيوم

يتم عرض مثال للسماح لك بفهم عملية إنشاء تقرير المدى.

الخطوة 1 : سيتم إنشاء مشروع مخضرم وفئة BasicExtentReport.java مع إضافة رمز متاح هنا

  • يتم إنشاء ملف HTML مستقل من فئة "ExtentHtmlReporter".
  • يتم قبول "ExtentHtmlReporter (java.io.File)" في هذه الفئة والمسار "ExtentHtmlReporter (java.lang.String filePath)".
  • يتم تمرير مسار الملف لحفظ التقارير.
  • تسمح طريقة config () الخاصة بالفئة "ExtentHtmlReporter" بخيارات متنوعة للتكوين. يمكن تغيير العناصر من خلال الكود لإجراء تغييرات في مظهر تقرير المدى بما في ذلك الطابع الزمني واسم التقرير وما إلى ذلك.
  • يتم الإبلاغ عن حالة كل خطوة من خطوات الاختبار بواسطة "AfterMethod" وبالتالي يتم تحديث حالة الاختبار مثل النجاح ، والفشل ، والتخطي ، وما إلى ذلك في حالة حدوث أي خطأ ، يتم إنشاء رسالة لإعطاء المعلومات. يتم ذلك من خلال "result.getThrowable ()".
  • يتم إنشاء تسميات الحالة باستخدام فئة MarkupHelper التي تقوم أيضًا بتلوين حالة التقرير.

الخطوة 2: يتم تمرير نظام التشغيل ومعلمات المتصفح من خلال إنشاء ملف testng.xml. الكود متاح على الموقع المذكور.

الخطوة 3: تمت إضافة رمز آخر إلى ملف pom.cml.

الخطوة 4: يؤدي تشغيل البرنامج إلى إنشاء التقرير الناتج .

مصدر

لعرض تقارير الفشل ، يجب النقر فوق الاختبارات الفاشلة. سيعرض هذا حالة الاختبار إلى جانب سبب فشل الاختبار.

بعض الأشياء الإضافية المتعلقة بتقارير المدى هي:

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

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

خاتمة

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

إذا كنت على استعداد لتعلم واستكشاف مزايا برمجة البرامج ، فتحقق من دورة برنامج Executive PG في تطوير البرمجيات - التخصص في تطوير Full Stack ، الذي تقدمه upGrad . هذه دورة مصممة خصيصًا للمهنيين المبتدئين ضمن الفئة العمرية من 21 إلى 45 عامًا. من خلال توفير منصة للمحاضرات والجلسات التفاعلية عبر الإنترنت مع الخبرات العملية ، توفر الدورة ضمان تحديد المستوى في أفضل الصناعات. فريقنا متاح لأية استفسارات.

ما هو منشئ تقرير السيلينيوم؟

يعد Selenium Report Builder أو Selenium IDE أحد مكونات Firefox الإضافية للسيلينيوم الذي يساعد في إنشاء وتحرير حالات اختبار السيلينيوم. يجعل عملية الأتمتة أكثر كفاءة ويقلل من الجهد المطلوب لإنشاء تقارير مختلفة. إنها طريقة مريحة لإجراء الاختبارات وتوفر نظرة عامة على الحالة الحالية. يتم إنشاء التقارير بتنسيقات مختلفة مثل النص و PDF و CSV و HTML وما إلى ذلك.

ما الذي يمكن اختباره تلقائيًا باستخدام السيلينيوم؟

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

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

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