Szelén tesztek C#-on Linuxon

Webes alkalmazások tesztelésének automatizálása Szelén gyakori megoldás az autoteszt fejlesztők körében, ill C# az egyik legnépszerűbb programozási nyelv, így ezen eszközök kombinációja nem vet fel kérdéseket. E technológiák felhasználásával történő fejlesztéshez gyakran használják a Microsoft Windows rendszerhez készült népszerű szabadalmaztatott szoftvereit, de érdekelt, hogy milyen ingyenes analógok használhatók anélkül, hogy eltérnénk a Selenium + C# veremtől.

Mivel nem találtam orosz nyelvű cikket ebben a témában, megosztom tapasztalataimat a Linux C# nyelvű automatikus tesztek fejlesztésére és hibakeresésére szolgáló környezet létrehozásáról.

A használt operációs rendszer a Kubuntu 18.04 64 bites Linux kernellel 4.15.0-99-generic, a webhelyről letöltött ISO képből telepítve hivatalos honlapja. Úgy gondolom, hogy bármelyik modern és meglehetősen népszerű Linux disztribúció megteszi.

A Mono JIT fordító 6.6.0.166-os verziója a C# CLR-jeként működött. A telepítése a parancsok szekvenciális másolásából és végrehajtásából állt a terminálba (a Kubuntuban ez a Konsole) ennek az oldalnak.

És IDE-ként használják MonoDevelop 7.8.4 (2. build), a Mono-hoz hasonlóan telepítve.

A Selenium sok böngészőt támogat, de lusta voltam mindennel foglalkozni, és erre korlátoztam magam króm'om, miután telepítette 64 bites .deb csomag.

Ezután létrehozunk egy megoldást a MonoDevelopban:

  • indítsa el a MonoDevelop programot
  • lépjen a "Fájl" menübe
  • válassza a "Megoldás létrehozása" lehetőséget
  • kattintson a „.NET” gombra
  • válassza a „NUnit Library Project” lehetőséget, majd kattintson a „Next” gombra.
  • adja meg a megoldás nevét és elérési útját, kattintson a „Létrehozás” gombra.

Szelén tesztek C#-on Linuxon

A böngésző vezérléséhez néhány NuGet-csomagra is szüksége lesz:

  • lépjen a "Projekt" menübe, és válassza a "NuGet csomagok hozzáadása" lehetőséget.
  • keresse meg és telepítse a Selenium.WebDriver csomagot
  • keresse meg és telepítse a Selenium.WebDriver.ChromeDriver csomagot

Szelén tesztek C#-on Linuxon

Ez minden, csak írjon egy kódot, hogy ellenőrizze, hogy minden úgy van-e beállítva, ahogy kell. A megoldás létrehozásakor automatikusan létrejön a tesztmetódusokhoz tartozó Test.cs fájl, amelybe a következő néhány sornyi kódot teszem:

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();
        }
    }
}

A teszt az „Egységtesztek” fülről indul, ha nem jelenik meg, lépjen a „Nézet” menübe, és válassza a „Teszt” lehetőséget.

Szelén tesztek C#-on Linuxon

Sikeres automatizálás =)

Forrás: will.com

Hozzászólás