Selenium toetse op C# op Linux

Outomatisering van webtoepassingstoetsing met behulp van Selenium 'n algemene oplossing onder outotoets ontwikkelaars, en C# een van die gewildste programmeertale, so die kombinasie van hierdie instrumente laat geen vrae ontstaan ​​nie. Om met behulp van hierdie tegnologieë te ontwikkel, word gewilde eie sagteware van Microsoft vir Windows dikwels gebruik, maar ek was geïnteresseerd om te weet watter gratis analoë gebruik kan word sonder om van die Selenium + C#-stapel vir hierdie taak af te wyk.

Aangesien ek geen Russiese-talige artikels oor hierdie onderwerp gevind het nie, sal ek my ervaring deel van die opstel van 'n omgewing vir die ontwikkeling en ontfouting van outotoetse in C# op Linux.

Die bedryfstelsel wat gebruik is, was Kubuntu 18.04 64-bis met Linux-kern 4.15.0-99-generies, geïnstalleer vanaf 'n ISO-beeld wat afgelaai is vanaf amptelike webwerf. Ek glo enige moderne en redelik gewilde Linux-verspreiding sal doen.

Mono JIT samesteller weergawe 6.6.0.166 het opgetree as 'n CLR vir C#. Die installasie daarvan het bestaan ​​uit die opeenvolgende kopiëring en uitvoering van opdragte in die terminale (in Kubuntu is dit Konsole) met hierdie bladsy.

En gebruik as 'n IDE MonoDevelop 7.8.4 (bou 2), soortgelyk aan Mono geïnstalleer.

Selenium ondersteun baie blaaiers, maar ek was te lui om met alles te steur en het myself daartoe beperk Chrome'om, nadat dit geïnstalleer is 64-bis .deb-pakket.

Vervolgens skep ons 'n oplossing in MonoDevelop:

  • begin MonoDevelop
  • gaan na die "File"-kieslys
  • kies "Skep oplossing"
  • klik “.NET”
  • kies "NUnit Library Project" en klik "Volgende"
  • dui die naam en pad van die oplossing aan, klik "Skep"

Selenium toetse op C# op Linux

Om die blaaier te beheer, sal jy ook 'n paar NuGet-pakkette benodig:

  • gaan na die "Project"-kieslys en kies "Voeg NuGet-pakkette by"
  • soek en installeer die Selenium.WebDriver-pakket
  • soek en installeer die Selenium.WebDriver.ChromeDriver-pakket

Selenium toetse op C# op Linux

Dit is al, al wat oorbly is om 'n kode te skryf om seker te maak dat alles gekonfigureer is soos dit moet. Wanneer 'n oplossing geskep word, word 'n lêer vir toetsmetodes Test.cs outomaties geskep, waarin ek die volgende paar reëls kode plaas:

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

Die toets word vanaf die "Eenheidtoetse"-oortjie geloods; as dit nie vertoon word nie, gaan na die "View"-kieslys en kies "Toets".

Selenium toetse op C# op Linux

Suksesvolle outomatisering =)

Bron: will.com

Voeg 'n opmerking