Selenium برنامج تعليمي لـ C# مع مثال NUnit

Selenium نظرة عامة

Selenium هو مفتوح المصدر، على شبكة الإنترنت اختبار الأتمتة أداة تدعم متصفحات متعددة وأنظمة تشغيل متعددة. وهي تسمح للمختبرين باستخدام لغات برمجة متعددة مثل Java، C #، Pythonو.Net وRuby وPHP وPerl لترميز الاختبارات الآلية.

نظرة عامة على لغة C#

C# هي لغة برمجة موجهة للكائنات مشتقة من C++ و Java. تتيح لغة C# للمطورين إنشاء تطبيقات باستخدام Visual Studio على منصة .Net. فيما يلي الميزات الرئيسية للغة C#: C#.

  1. وهي لغة برمجة كائنية التوجه
  2. يدعم تطوير تطبيقات لوحة التحكم والويندوز والويب
  3. ويوفر ميزات مثل التغليف والميراث وتعدد الأشكال.

بناء الجملة الأساسي لـ C#

يجب أن يحتوي البرنامج في C# على الأقسام التالية

  1. إعلان مساحة الاسم
  2. الحصص
  3. سمات الطبقة والأساليب
  4. الطريقة الرئيسية
  5. تصريحات البرنامج

مثال-

يوجد أدناه عينة Selenium برنامج مثال C# لطباعة النص "Guru99" على وحدة تحكم النظام.

using System;
namespace FirstProgram {
class DemoPrint {
static void main(){
    Console.WriteLine("Guru99");
	}
  }
}

التفسير:

  • مساحة الاسم في ما سبق Selenium مثال C# عبارة عن مجموعة من الفئات المتعددة. يجب الإعلان عن كل مساحة اسم باستخدام الكلمة الأساسية "باستخدام".
  • يتضمن البيان الأول من الكود مساحة الاسم "النظام" في برنامجنا. تحدد مساحة اسم النظام الفئات والأحداث الأساسية المستخدمة في C#. تعتمد مساحة الاسم المستخدمة على متطلبات البرنامج.
  • البيان الثاني يعلن عن مساحة الاسم "FirstProgram" للفئة "DemoPrint". يمكن أن يحتوي ملف AC# على فئات متعددة ضمن نفس مساحة الاسم.
  • يتضمن البيان الثالث إعلان الفصل. قد تحتوي الفئة على سمات متعددة وطرق متعددة.
  • يتضمن البيان الرابع إعلانًا للطريقة الرئيسية. الطريقة الرئيسية هي نقطة الدخول للتنفيذ لكل فئة.
  • العبارة الأخيرة هي بناء جملة C# المستخدم لطباعة عبارة إلى وحدة التحكم. WriteLine هي إحدى طرق فئة "Console.

Selenium مع إعداد C#

كيفية إعداد Visual Studio باستخدام Selenium برنامج تشغيل الويب:

الآن في هذا Selenium دروس C#، دعنا نتعلم العملية خطوة بخطوة لإعداد Visual Studio مع Selenium برنامج تشغيل الويب:

Visual Studio عبارة عن بيئة تطوير متكاملة (IDE) يستخدمها المطورون لبناء تطبيقات عبر منصات متعددة مثل Windows, Androidوالتطبيقات المستندة إلى iOS والتطبيقات السحابية.

الخطوة 1) انتقل إلى URL

https://visualstudio.microsoft.com/downloads/ وانقر فوق "تنزيل مجاني" الزر المعروض في علامة التبويب مجتمع Visual Studio

إعداد Visual Studio باستخدام Selenium ويب درايفر

الخطوة 2) افتح الملف الذي تم تنزيله. انقر فوق "نعم" إذا طُلب منك حقوق المسؤول.

إعداد Visual Studio باستخدام Selenium ويب درايفر

الخطوة 3) ستظهر النافذة المنبثقة أدناه. انقر على زر "متابعة".

إعداد Visual Studio باستخدام Selenium مساحات تخزينية

سيتم تنزيل الملفات كما هو موضح في النافذة المنبثقة أدناه.

إعداد Visual Studio باستخدام Selenium مساحات تخزينية

الخطوة 4) في الشاشة التالية ،

حدد مربعات الاختيار لـ

  • يونيفرسال Windows تطوير المنصة
  • .نت تطوير سطح المكتب

انقر فوق "تثبيت".

إعداد Visual Studio باستخدام Selenium مساحات تخزينية

انتظر حتى يكتمل تثبيت كل مكون. يبلغ حجم الملفات 16 جيجابايت وستستغرق بعض الوقت.

إعداد Visual Studio باستخدام Selenium مساحات تخزينية

الخطوة 5) ستظهر النافذة المنبثقة أدناه. انقر فوق زر "إعادة التشغيل".

إعداد Visual Studio باستخدام Selenium مساحات تخزينية

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

إعداد Visual Studio باستخدام Selenium مساحات تخزينية

الخطوة 7) في الشاشة التالية ،

  • حدد موضوع اللون الذي تفضله
  • انقر فوق الزر "بدء تشغيل Visual Studio"

إعداد Visual Studio باستخدام Selenium مساحات تخزينية

الخطوة 8) ستظهر شاشة "البدء" في Visual Studio.

إعداد Visual Studio باستخدام Selenium مساحات تخزينية

إنشاء مشروع جديد في Visual Studio:

الخطوة 1) في القائمة ملف، انقر فوق جديد > المشروع

إنشاء مشروع جديد في Visual Studio

الخطوة 2) في الشاشة التالية ،

  1. حدد الخيار "Visual C#"
  2. انقر فوق تطبيق وحدة التحكم (.Net Framework)
  3. أدخل الاسم كـ "Guru99"
  4. انقر OK

إنشاء مشروع جديد في Visual Studio

الخطوة 3) سيتم عرض الشاشة أدناه بمجرد إنشاء المشروع بنجاح.

إنشاء مشروع جديد في Visual Studio

إعداد Visual Studio باستخدام Selenium برنامج تشغيل الويب:

الخطوة 1) انتقل إلى الأدوات -> NuGet مدير الحزم -> إدارة NuGet حزم للحل

إعداد Visual Studio باستخدام Selenium ويب درايفر

الخطوة 2) في الشاشة التالية

  1. البحث عن Selenium على الشاشة الناتجة
  2. حدد نتيجة البحث الأولى
  3. حدد مربع الاختيار الخاص بالمشروع
  4. انقر فوق "تثبيت"

إعداد Visual Studio باستخدام Selenium ويب درايفر

الخطوة 3) انقر على زر "موافق" في الشاشة المنبثقة

إعداد Visual Studio باستخدام Selenium ويب درايفر

الخطوة 4) سيتم عرض الرسالة أدناه بمجرد تثبيت الحزمة بنجاح.

إعداد Visual Studio باستخدام Selenium ويب درايفر

إطار عمل NUnit: نظرة عامة

NUnit هو وحدة التجارب الإطار الذي يدعمه Visual Studio و Selenium NUnit هو إطار عمل اختبار الوحدات الأكثر استخدامًا لتطبيقات .Net. يعرض NUnit نتائج الاختبار بتنسيق قابل للقراءة ويسمح للمختبر بتصحيح أخطاء الاختبارات الآلية.

نحن بحاجة إلى تثبيت NUnit Framework و NUnit Test Adapter على Visual Studio حتى نتمكن من استخدامه.

خطوات تثبيت NUnit Framework

الآن في هذا Selenium باستخدام البرنامج التعليمي C#، دعنا نتعلم عملية تثبيت إطار عمل NUnit:

الخطوة 1) انتقل إلى الأدوات -> NuGet مدير الحزم -> إدارة NuGet حزم للحل

تثبيت إطار عمل NUnit

الخطوة 2) في النافذة التالية

  1. ابحث عن NUnit
  2. حدد نتيجة البحث
  3. حدد المشروع
  4. انقر على تثبيت

تثبيت إطار عمل NUnit

الخطوة 3) ستظهر النافذة المنبثقة أدناه. انقر على زر "موافق".

تثبيت إطار عمل NUnit

الخطوة 4) ستظهر الرسالة أدناه بمجرد اكتمال التثبيت.

تثبيت إطار عمل NUnit

خطوات تنزيل محول اختبار NUnit

الآن في هذا البرنامج التعليمي لـ NUnit، سنغطي خطوات تنزيل NUnit Test Adaptor:

يرجى ملاحظة أن الخطوات التالية لا تنطبق إلا على الأجهزة ذات 32 بت. أما بالنسبة للأجهزة ذات 64 بت، فيتعين عليك تنزيل "محول اختبار NUnit3" باتباع نفس العملية المذكورة أدناه.

الخطوة 1) انتقل إلى الأدوات ->NuGet مدير الحزم -> إدارة NuGet حزم للحل. في تلك الشاشة،

  1. ابحث في NUnitTestAdapter
  2. انقر فوق نتيجة البحث
  3. حدد المشروع
  4. انقر على تثبيت

قم بتنزيل محول اختبار NUnit

الخطوة 2) انقر فوق "موافق" في النافذة المنبثقة للتأكيد. بمجرد الانتهاء من التثبيت، سترى الرسالة التالية:

قم بتنزيل محول اختبار NUnit

Selenium وإطار عمل NUnit

يتيح دمج Selenium مع إطار عمل NUnit للمختبر التمييز بين فئات الاختبار المختلفة. كما يسمح NUnit للمختبرين باستخدام التعليقات التوضيحية مثل SetUp وTest وTearDown لأداء الإجراءات قبل وبعد تشغيل الاختبار.

يمكن دمج إطار عمل NUnit مع Selenium عن طريق إنشاء فئة اختبار NUnit وتشغيل فئة الاختبار باستخدام إطار عمل NUnit.

أدناه الخطوات في هذا Selenium هناك حاجة إلى برنامج تعليمي لإطار عمل C# لإنشاء فئة اختبار وتشغيلها باستخدام إطار عمل NUnit.

خطوات إنشاء فئة اختبار NUnit في Selenium:

الخطوة 1) في مستكشف الحلول، انقر بزر الماوس الأيمن على المشروع > إضافة > فئة

إنشاء فئة اختبار NUnit في Selenium

الخطوة 2) ستظهر نافذة إنشاء الفصل.

  1. توفير اسم للفئة
  2. انقر على زر إضافة

إنشاء فئة اختبار NUnit في Selenium

الخطوة 3) سوف تظهر الشاشة أدناه.

إنشاء فئة اختبار NUnit في Selenium

الخطوة 4) أضف الكود التالي إلى الفئة التي تم إنشاؤها. يرجى ملاحظة أنك بحاجة إلى تحديد موقع ملف "chromdriver.exe" أثناء تهيئة برنامج تشغيل Chrome.

using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Firefox;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Guru99Demo
{
	class Guru99Demo						
    {
        IWebDriver driver;

        [SetUp]
		public void startBrowser()
        {
            driver = new ChromeDriver("D:\\3rdparty\\chrome");
        }

        [Test]
		public void test()
        {
            driver.Url = "http://www.google.co.in";
        }

        [TearDown]
		public void closeBrowser()
        {
            driver.Close();
        }

    }
}

الخطوة 4) انقر فوق "إنشاء" -> "إنشاء الحل"

إنشاء فئة اختبار NUnit في Selenium

NOTE: قد تحصل على خطأ مثل "لا يحتوي على طريقة "رئيسية" ثابتة مناسبة لنقطة دخول" عند الإنشاء

إنشاء فئة اختبار NUnit في Selenium

لحل هذه المشكلة، انتقل إلى Project > Properties وقم بتغيير نوع الإخراج إلى "Class Library". الافتراضي هو "تطبيق وحدة التحكم".

إنشاء فئة اختبار NUnit في Selenium

الخطوة 5) بمجرد نجاح البناء، نحتاج إلى فتح نافذة Test Explorer. انقر فوق اختبار -> Windows -> اختبار المستكشف

إنشاء فئة اختبار NUnit في Selenium

الخطوة 6) يتم فتح نافذة Test Explorer مع قائمة الاختبارات المتاحة. انقر بزر الماوس الأيمن على Test Explorer وحدد Run Selected Tests

إنشاء فئة اختبار NUnit في Selenium

الخطوة 7) Selenium يجب فتح المتصفح بعنوان URL المحدد وإغلاق المتصفح. سيتم تغيير حالة حالة الاختبار إلى "اجتياز" في نافذة Test Explorer.

إنشاء فئة اختبار NUnit في Selenium

Selenium أوامر WebDriver في C#

تستخدم لغة C# الواجهة "IWebDriver" للتفاعل مع المتصفح. فيما يلي فئات الأوامر المتاحة مع Selenium في C #.

  1. أوامر المتصفح
  2. أوامر عنصر الويب
  3. أوامر المنسدلة

الآن في Selenium البرنامج التعليمي C Sharp، دعونا ندرس Selenium أوامر WebDriver واحدة تلو الأخرى

أوامر المتصفح:

فيما يلي قائمة بأوامر المتصفح المتوفرة في C# مع Selenium.

اسم الأمر الوصف بناء الجملة
أمر URL يُستخدم هذا الأمر لفتح عنوان URL محدد في المتصفح.
driver.Url = "https://www.guru99.com"
أمر العنوان يُستخدم هذا الأمر لاسترداد عنوان الصفحة لصفحة الويب المفتوحة حاليًا
String title = driver.Title
أمر مصدر الصفحة يُستخدم هذا الأمر لاسترداد الكود المصدري لصفحة الويب المفتوحة حاليًا.
String pageSource = driver.PageSource
إغلاق الأمر يُستخدم هذا الأمر لإغلاق مثيل المتصفح الذي تم فتحه مؤخرًا.
driver.Close();
قم بإنهاء الأمر يُستخدم هذا الأمر لإغلاق جميع مثيلات المتصفح المفتوحة
driver.Quit();
الأمر الخلفي يتم استخدام هذا الأمر للانتقال إلى الصفحة السابقة لسجل المتصفح.
driver.Navigate().Back();
القيادة إلى الأمام يُستخدم هذا الأمر للانتقال إلى الصفحة التالية من سجل المتصفح.
driver.Navigate().Forward()
تحديث الأمر يُستخدم هذا الأمر لتحديث المتصفح.
driver.Navigate().Refresh()

أوامر ويبليمنت

يمثل عنصر الويب جميع العناصر الموجودة على صفحة الويب. ويتم تمثيلها بواسطة علامات HTML. وتندرج كل الأزرار ومربعات النص والروابط والصور والجداول والإطارات ضمن عناصر الويب. Operaيمكن تشغيل التفاعلات على عناصر الويب باستخدام واجهة IWebelement. للتفاعل مع عنصر ويب، نحتاج إلى العثور على العنصر على صفحة الويب ثم إجراء عمليات عليه. يمكن استخدام أدوات مثل Firebug وFirepath لتحديد كسباث من ويبليمنت.

فيما يلي قائمة بأوامر Webelement المتوفرة في C#.

اسم الأمر الوصف بناء الجملة
انقر فوق الأمر يستخدم هذا الأمر للنقر على عنصر ويب. لكي يكون العنصر قابلاً للنقر، يجب أن يكون العنصر مرئيًا على صفحة الويب. يستخدم هذا الأمر أيضًا لعمليات مربع الاختيار وأزرار الاختيار.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));  element.Click();
أمر واضح يتم استخدام هذا الأمر خصيصًا لمسح محتويات مربعات النص الموجودة.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
element.Clear();
أمر إرسال المفاتيح يستخدم هذا الأمر لإدخال قيمة في مربعات النص. يجب تمرير القيمة المراد إدخالها كمعلمة إلى
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
element.SendKeys("guru99");
الأمر المعروض يستخدم هذا الأمر لتحديد ما إذا كان يتم عرض عنصر معين على صفحة الويب. يعيد هذا الأمر قيمة منطقية؛ true أو false حسب إمكانية رؤية عنصر الويب.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
Boolean status = element.Displayed;
أمر ممكّن يُستخدم هذا الأمر لتحديد ما إذا تم تمكين عنصر ويب معين على صفحة الويب. يقوم هذا الأمر بإرجاع قيمة منطقية؛ صحيحة أو خاطئة نتيجة لذلك.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
Boolean status = element.Enabled;
الأمر المحدد يستخدم هذا الأمر لتحديد ما إذا كان عنصر ويب معينًا محددًا. يستخدم هذا الأمر لمربعات الاختيار وأزرار الاختيار وعمليات التحديد.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
Boolean status = element.Selected;
إرسال الأمر: هذا الأمر مشابه لأمر النقر، والفرق يكمن في ما إذا كان نموذج HTML يحتوي على زر من النوع إرسال. بينما ينقر أمر النقر على أي زر، ينقر أمر الإرسال على الأزرار التي تحمل النوع إرسال فقط.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));  element.submit();
أمر نصي يقوم هذا الأمر بإرجاع النص الداخلي لعنصر Webelement. يقوم هذا الأمر بإرجاع قيمة سلسلة نتيجة لذلك.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
String text=element.Text;
أمر TagName يقوم هذا الأمر بإرجاع علامة HTML لعنصر الويب. تقوم بإرجاع قيمة سلسلة كنتيجة.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));  String tagName = element.TagName;
أمر GetCSSValue: تُستخدم هذه الطريقة لإرجاع لون عنصر الويب على شكل سلسلة rgba (الأحمر والأخضر والأزرق وألفا).
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
String color = element.getCSSValue;

الناتج- إذا كان لون العنصر أحمر، فسيكون الناتج rgba(255,0,0,1)

أوامر القائمة المنسدلة:

يمكن تنفيذ عمليات القائمة المنسدلة في C# باستخدام فئة SelectElement.

فيما يلي عمليات القائمة المنسدلة المختلفة المتوفرة في C#.

اسم الأمر الوصف بناء الجملة
الأمر SelectByText يحدد هذا الأمر خيارًا من القائمة المنسدلة بناءً على نص الخيار.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.SelectByText("Guru99");
أمر SelectByIndex يتم استخدام هذا الأمر لتحديد خيار بناءً على فهرسه. يبدأ مؤشر القائمة المنسدلة عند 0.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.SelectByIndex("4");
الأمر SelectByValue يتم استخدام هذا الأمر لتحديد خيار بناءً على قيمة الخيار الخاصة به.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.SelectByValue("Guru99");
أمر الخيارات يتم استخدام هذا الأمر لاسترجاع قائمة الخيارات المعروضة في القائمة المنسدلة.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
List<IWebelement> options = select. Options;
int size = options.Count;
for(int i=0;i<options.size();i++)
{
String value = size.elementAt(i).Text;
Console.writeLine(value);
}

يطبع الكود أعلاه جميع الخيارات على وحدة التحكم ضمن القائمة المنسدلة.

أمر متعدد يُستخدم هذا الأمر لتحديد ما إذا كانت القائمة المنسدلة عبارة عن قائمة منسدلة متعددة التحديد؛ تتيح القائمة المنسدلة متعددة التحديد للمستخدم إمكانية تحديد أكثر من خيار واحد في القائمة المنسدلة في المرة الواحدة. يقوم هذا الأمر بإرجاع قيمة منطقية.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
Boolean status = select.IsMultiple();
الأمر ديسيلكتال يتم استخدام هذا الأمر في القوائم المنسدلة متعددة التحديد. يقوم بمسح الخيارات التي تم تحديدها بالفعل.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.DeSelectAll();
أمر دي سيليكت باي إندكس يقوم هذا الأمر بإلغاء تحديد القيمة المحددة بالفعل باستخدام الفهرس الخاص بها.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.DeSelectByIndex("4");
الأمر ديسيليكتبيفالو يقوم هذا الأمر بإلغاء تحديد قيمة محددة بالفعل باستخدام قيمتها.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.DeSelectByValue("Guru99");
الأمر ديسيليكتبيتيكست يقوم هذا الأمر بإلغاء تحديد القيمة المحددة بالفعل باستخدام النص الخاص بها.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.DeSelectByText("Guru99");

عينات التعليمات البرمجية

مثال 1: انقر على الرابط باستخدام XPATH Locator:

سيناريو الاختبار:

  1. انتقل إلى صفحة الويب Demo Guru99 – https://demo.guru99.com/test/guru99home/
  2. تكبير النافذة
  3. انقر على قائمة "الاختبار".
  4. أغلق المتصفح
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Guru99Demo
{
	class CSS						
    {
        IWebDriver m_driver;

        [Test]
		public void cssDemo()
        {
            m_driver = new ChromeDriver("D:\\3rdparty\\chrome");
            m_driver.Url = "https://demo.guru99.com/test/guru99home/";
            m_driver.Manage().Window.Maximize();
            IWebelement link = m_driver.FindElement(By.XPath(".//*[@id='rt-header']//div[2]/div/ul/li[2]/a"));
            link.Click();
            m_driver.Close();
        }
    }
}

مثال 2: إدخال البيانات في النصBox وانقر على زر باستخدام محدد موقع XPATH:

سيناريو الاختبار:

  1. انتقل إلى الصفحة التجريبية لـ Guru 99 – https://demo.guru99.com/test/guru99home/
  2. أدخل البيانات في مربع نص البريد الإلكتروني
  3. انقر على زر التسجيل
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Guru99Demo
{
	class CSS						
    {
        IWebDriver m_driver;

        [Test]
		public void cssDemo()
        {
            m_driver = new ChromeDriver("G:\\");
            m_driver.Url = "https://demo.guru99.com/test/guru99home/";
            m_driver.Manage().Window.Maximize();

             
			// Store locator values of email text box and sign up button				
            IWebElement emailTextBox = m_driver.FindElement(By.XPath(".//*[@id='philadelphia-field-email']"));
            IWebElement signUpButton = m_driver.FindElement(By.XPath(".//*[@id='philadelphia-field-submit']"));

            emailTextBox.SendKeys("[email protected]");
            signUpButton.Click();
                        
        }
    }
}			

مثال 3: إدخال البيانات في النصBox وانقر على زر باستخدام محدد موقع CSS:

سيناريو الاختبار:

  1. انتقل إلى الصفحة التجريبية لـ Guru 99 – https://demo.guru99.com/test/guru99home/
  2. أدخل البيانات في مربع نص البريد الإلكتروني
  3. انقر على زر التسجيل
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Guru99Demo
{
	class CSS						
    {
        IWebDriver m_driver;

        [Test]
		public void cssDemo()
        {
            m_driver = new ChromeDriver("G:\\");
            m_driver.Url = "https://demo.guru99.com/test/guru99home/";
            m_driver.Manage().Window.Maximize();

             
			// Store locator values of email text box and sign up button				
            IWebElement emailTextBox = m_driver.FindElement(By.CssSelector("input[id=philadelphia-field-email]"));
            IWebElement signUpButton = m_driver.FindElement(By.CssSelector("input[id=philadelphia-field-submit]"));

            emailTextBox.SendKeys("[email protected]");
            signUpButton.Click();

             
        }
    }
}

المثال 4: حدد قيمة في القائمة المنسدلة:

سيناريو الاختبار:

  1. انتقل إلى الصفحة التجريبية لـ Guru 99 – https://demo.guru99.com/test/guru99home/
  2. انقر على SAP الصفحة
  3. أدخل البيانات في مربعات النص الخاصة بالاسم والبريد الإلكتروني
  4. حدد قيمة من القائمة المنسدلة للدورة التدريبية
  5. أغلق المتصفح
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Support.UI;


namespace Guru99Demo
{
	class TestSelect						
    {
        IWebDriver m_driver;

        [Test]
		public void selectDemo()
        {
            m_driver = new ChromeDriver("G:\\");
            m_driver.Url = "https://demo.guru99.com/test/guru99home/";
            m_driver.Manage().Window.Maximize();

            IWebElement course = m_driver.FindElement(By.XPath(".//*[@id='awf_field-91977689']"));

			var selectTest = new SelectElement(course);
			// Select a value from the dropdown				
            selectTest.SelectByValue("sap-abap");
                        
        }
    }
}

ملخص

  • لكي تستخدم Selenium لاستخدام WebDriver باستخدام C#، تحتاج إلى تثبيت Visual Studio.
  • NUnit هو إطار عمل اختبار الوحدة الذي يدعمه Visual Studio و Selenium محرك الويب
  • نحن بحاجة إلى تثبيت NUnit Framework و NUnit Test Adapter على Visual Studio حتى نتمكن من استخدامه.
  • يمكن دمج إطار عمل NUnit مع Selenium عن طريق إنشاء فئة اختبار NUnit وتشغيل فئة الاختبار باستخدام إطار عمل NUnit.
  • تسمح NUnit أيضًا للمختبرين باستخدام التعليقات التوضيحية مثل SetUp وTest وTearDown لتنفيذ الإجراءات قبل وبعد تشغيل الاختبار.
  • Selenium يمكن تصنيف أوامر WebDriver إلى أوامر المتصفح وأوامر Webelement وأوامر القائمة المنسدلة.

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