Аутоматизација тестирања веб апликација коришћењем Селен уобичајено решење међу програмерима аутотестирања, и C# један од најпопуларнијих програмских језика, тако да комбинација ових алата не изазива никаква питања. За развој користећи ове технологије, често се користи популарни власнички софтвер компаније Мицрософт за Виндовс, али ме је занимало који бесплатни аналоги се могу користити без одступања од стека Селениум + Ц# за овај задатак.
Пошто нисам нашао ниједан чланак на руском језику о овој теми, поделићу своје искуство постављања окружења за развој и отклањање грешака у аутотестовима у Ц# на Линук-у.
Коришћени ОС је био Кубунту 18.04 64-бит са Линук кернелом 4.15.0-99-генерички, инсталиран са ИСО слике преузете са
Моно ЈИТ компајлер верзија 6.6.0.166 је деловао као ЦЛР за Ц#. Његова инсталација се састојала од узастопног копирања и извршавања команди у терминал (у Кубунту-у ово је Консоле) са
И користи се као ИДЕ
Селен подржава многе претраживаче, али сам био превише лењ да се мучим са свиме и ограничио сам се на то хром'ом, након инсталације
Затим креирамо решење у МоноДевелоп:
- покрените МоноДевелоп
- идите на мени „Датотека“.
- изаберите „Креирај решење“
- кликните на „.НЕТ“
- изаберите „НУнит Либрари Пројецт“ и кликните на „Даље“
- наведите име и путању решења, кликните на „Креирај“
Да бисте контролисали прегледач, биће вам потребно и неколико НуГет пакета:
- идите на мени „Пројекат“ и изаберите „Додај НуГет пакете“
- потражите и инсталирајте пакет Селениум.ВебДривер
- потражите и инсталирајте пакет Селениум.ВебДривер.ЦхромеДривер
То је све, остаје само да напишете неки код како бисте проверили да ли је све конфигурисано како треба. Приликом креирања решења аутоматски се креира датотека за методе тестирања Тест.цс у коју сам ставио следећих неколико редова кода:
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();
}
}
}
Тест се покреће са картице „Тестови јединица“; ако није приказан, идите на мени „Приказ“ и изаберите „Тест“.
Успешна аутоматизација =)
Извор: ввв.хабр.цом