Selenium testuje C# na Linuxu

Automatizace testování webových aplikací pomocí Selen běžné řešení mezi vývojáři autotestů a C# jeden z nejpopulárnějších programovacích jazyků, takže kombinace těchto nástrojů nevyvolává žádné otázky. K vývoji pomocí těchto technologií se často používá oblíbený proprietární software od společnosti Microsoft pro Windows, ale zajímalo mě, jaké bezplatné analogy lze pro tento úkol použít bez odchýlení se od zásobníku Selenium + C#.

Protože jsem na toto téma nenašel žádné ruskojazyčné články, podělím se o své zkušenosti s nastavením prostředí pro vývoj a ladění autotestů v C# na Linuxu.

Použitý OS byl Kubuntu 18.04 64-bit s linuxovým jádrem 4.15.0-99-generic, nainstalovaný z obrazu ISO staženého z oficiální stránky. Věřím, že každá moderní a poměrně populární distribuce Linuxu bude stačit.

Kompilátor Mono JIT verze 6.6.0.166 fungoval jako CLR pro C#. Jeho instalace spočívala v postupném kopírování a provádění příkazů do terminálu (v Kubuntu je to Konsole) s tuto stránku.

A používá se jako IDE MonoDevelop 7.8.4 (sestavení 2), nainstalovaný podobně jako Mono.

Selenium podporuje mnoho prohlížečů, ale byl jsem líný se vším obtěžovat a omezoval jsem se na to chróm'om, po instalaci 64bitový balíček .deb.

Dále vytvoříme řešení v MonoDevelop:

  • spustit MonoDevelop
  • přejděte do nabídky "Soubor".
  • vyberte „Vytvořit řešení“
  • klikněte na „.NET“
  • vyberte „NUnit Library Project“ a klikněte na „Další“
  • uveďte název a cestu řešení, klikněte na „Vytvořit“

Selenium testuje C# na Linuxu

K ovládání prohlížeče budete potřebovat také několik balíčků NuGet:

  • přejděte do nabídky "Projekt" a vyberte "Přidat balíčky NuGet"
  • vyhledejte a nainstalujte balíček Selenium.WebDriver
  • vyhledejte a nainstalujte balíček Selenium.WebDriver.ChromeDriver

Selenium testuje C# na Linuxu

To je vše, zbývá jen napsat nějaký kód, který zkontroluje, zda je vše nakonfigurováno tak, jak má. Při vytváření řešení se automaticky vytvoří soubor pro testovací metody Test.cs, do kterého vložím následujících pár řádků kódu:

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

Test se spouští ze záložky „Unit Tests“; pokud není zobrazena, přejděte do nabídky „View“ a vyberte „Test“.

Selenium testuje C# na Linuxu

Úspěšná automatizace =)

Zdroj: www.habr.com

Přidat komentář