أتمتة اختبار تطبيقات الويب باستخدام عنصر السيلينيوم حل مشترك بين مطوري autotest و C# تُعدّ هذه اللغة من أكثر لغات البرمجة شيوعًا، ويُعتبر دمج هذه الأدوات أمرًا بسيطًا. ولتطوير البرامج باستخدام هذه التقنيات، غالبًا ما تُستخدم برامج مايكروسوفت الاحتكارية الشهيرة. Windowsومع ذلك، كنت مهتمًا بمعرفة ما هي البدائل المجانية التي يمكن استخدامها دون الابتعاد عن مجموعة Selenium + C# لهذه المهمة.
بما أنني لم أجد أي مقالات باللغة الروسية حول هذا الموضوع، فسأشارك تجربتي في إعداد بيئة لتطوير وتصحيح الاختبارات الآلية في لغة C#. Linux.
تم استخدام K كنظام تشغيلubuntu 18.04 64 بت مع نواة Linux 4.15.0-99-generic، تم تثبيته من صورة ISO التي تم تنزيلها من أعتقد أن أي منصة توزيع حديثة وشائعة إلى حد ما ستفي بالغرض. Linux.
كان مُترجم Mono JIT الإصدار 6.6.0.166 بمثابة بيئة تشغيل اللغة العامة (CLR) للغة C#. تضمنت عملية تثبيته نسخ الأوامر وتنفيذها بالتسلسل في الطرفية (في Kubuntu هذا هو Konsole) مع .
وكمستخدم IDE ، مثبت بشكل مشابه لـ Mono.
يدعم السيلينيوم العديد من المتصفحات ، لكنني كنت كسولًا جدًا وأقتصر على ذلك الكرومأوم ، الإعداد .
بعد ذلك ، نقوم بإنشاء حل في MonoDevelop:
- إطلاق MonoDevelop
- اذهب إلى قائمة "ملف"
- حدد "إنشاء حل"
- انقر فوق ".NET"
- حدد "مشروع مكتبة NUnit" وانقر على "التالي"
- تحديد اسم ومسار الحل ، انقر فوق "إنشاء"

لإدارة المتصفح ، ستحتاج أيضًا إلى اثنين من حزم NuGet:
- انتقل إلى قائمة "المشروع" وحدد "إضافة حزم NuGet"
- ابحث عن حزمة Selenium.WebDriver وقم بتثبيتها
- ابحث عن الحزمة Selenium.WebDriver.ChromeDriver وقم بتثبيتها

هذا ، في الواقع ، كل شيء ، يبقى كتابة بعض التعليمات البرمجية للتحقق من أن كل شيء تم إعداده كما ينبغي. عند إنشاء حل ، يتم إنشاء ملف لطرق الاختبار Test.cs تلقائيًا ، وأضع الأسطر القليلة التالية من التعليمات البرمجية فيه:
using NUnit.Framework;
using System;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium;
namespace SeleniumTests
{
[TestFixture()]
public class Test
{
[Test()]
public void TestCase()
{
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("http://habr.com/");
Assert.IsTrue(driver.Url.Contains("habr.com"), "Что-то не так =(");
driver.Quit();
}
}
}يتم تشغيل الاختبار من علامة التبويب "اختبارات الوحدة" ، وإذا لم يتم عرضه ، فانتقل إلى قائمة "عرض" وحدد "اختبار".

أتمتة ناجحة =)
المصدر: www.habr.com
