Linux боюнча C# боюнча Selenium тесттери

Колдонуу менен веб-тиркеме тестирлөө автоматташтыруу селен автотест иштеп чыгуучулар арасында жалпы чечим, жана C# эң популярдуу программалоо тилдеринин бири, ошондуктан бул куралдардын айкалышы эч кандай суроолорду жаратпайт. Бул технологияларды колдонуу менен иштеп чыгуу үчүн Windows үчүн Microsoftтун популярдуу проприетардык программалык камсыздоосу көп колдонулат, бирок мен бул тапшырма үчүн Selenium + C# стекинен чыкпастан кандай акысыз аналогдорду колдонсо болорун билгим келди.

Мен бул темада орус тилиндеги макалаларды таба албагандыктан, Linux'та C# тилинде автотесттерди иштеп чыгуу жана мүчүлүштүктөрдү оңдоо чөйрөсүн түзүү боюнча тажрыйбам менен бөлүшөм.

Колдонулган ОС Kubuntu 18.04 64-бит, Linux ядросу 4.15.0-99-генерикалык, жүктөлүп алынган ISO сүрөтүнөн орнотулган. расмий сайты. Мен ар кандай заманбап жана абдан популярдуу Linux дистрибуциясы жасайт деп ишенем.

Mono JIT компиляторунун 6.6.0.166 версиясы C# үчүн CLR катары иштеген. Анын орнотулушу командаларды ырааттуу түрдө терминалга көчүрүү жана аткаруудан турган (Kubuntu-да бул Konsole). бул барак.

Жана IDE катары колдонулат MonoDevelop 7.8.4 (2-түзүү), Моного окшош орнотулган.

Selenium көптөгөн браузерлерди колдойт, бирок мен баары менен убара болгонго жалкоо болуп, өзүм менен чектелип калгам Chrome'Ом, орнотуп койдум 64 биттик .deb пакети.

Андан кийин, биз MonoDevelop ичинде чечим түзөбүз:

  • MonoDevelop ишке киргизиңиз
  • "Файл" менюсуна өтүңүз
  • "Чечимди түзүү" тандоо
  • ".NET" чыкылдатуу
  • "NUnit Library Project" тандап, "Кийинки" баскычын чыкылдатыңыз
  • чечимдин атын жана жолун көрсөтүп, "Түзүү" баскычын чыкылдатыңыз

Linux боюнча C# боюнча Selenium тесттери

Браузерди башкаруу үчүн сизге бир нече NuGet пакеттери керек болот:

  • "Долбоор" менюсуна барып, "NuGet пакеттерин кошуу" тандаңыз
  • Selenium.WebDriver топтомун издеп жана орнотуңуз
  • Selenium.WebDriver.ChromeDriver топтомун издеп жана орнотуңуз

Linux боюнча C# боюнча Selenium тесттери

Болгону, баары туура конфигурацияланганын текшерүү үчүн кандайдыр бир код жазуу гана калды. Чечимди түзүп жатканда, 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();
        }
    }
}

Сыноо "Бирдиктин тесттери" өтмөгүнөн ишке киргизилет, эгер ал көрсөтүлбөсө, "Көрүү" менюсуна өтүп, "Тестти" тандаңыз.

Linux боюнча C# боюнча Selenium тесттери

Ийгиликтүү автоматташтыруу =)

Source: www.habr.com

Комментарий кошуу