Каким образом приложение на С# для автотестов (Selenium) развернуть в интернете?

636
27 января 2017, 04:26

Использую C#, Selenium.Webdriver, фреймворк Atata, PhantomJS.

Написал много автотестов (библиотека), теперь стоит вопрос, как из этого сделать работающее приложение: должно размещаться в интернете, и периодически или по команде тестировать сайты клиентов.

Какой тип проекта для этого использовать? WebApi, или Asp.Net MVC, или что-то иное? Что предпочесть, чем еще улучшить проект?

И какие у решения делать все на C# есть недостатки, слабые стороны, особеннь в плане дальнейшего развития? Не стоит ли предпочесть решение на Python?

Answer 1

Не знаю насколько вам это поможет, расскажу как с этой задачей справился я, это как один из вариантов.

Вариант №1

Есть 3 больших набора автотестов, каждый набор это отдельное Windows-приложение(консольное, .exe)
Админ выделил мне виртуальную машину внутри нашей сети, на которой размещены данные наборы тестов.

Я написал приложение-чекер(агент), который проверяет БД на наличие новых задач. Задачи в БД создаются через веб-интерфейс. Агент находит задачи необходимые для запуска и запускает конкретное приложение(автотест).

Суть в том, что агент висит на той же машине, где лежат тесты и просто делает

Process.Start("AutotestName.exe");

После завершения автотест отправляет на E-mail отчет в формате HTML

Так же в веб-интерфейсе можно настроить для каждого теста расписание на запуск, поэтому автотесты у нас гоняются ночью =)

Вариант №2

Использовать TeamCity для запуска тестов.
Например у меня на прошлой работе все автотесты представлялись в виде .dll с использованием NUnit.
В TeamCity был настроен билд и запуск автотеста, запуск автотестов по кнопке, просмотр результатов там же в виде Passed/Failed.
Но для TeamCity так же должен быть установлен агент на билд-машине

READ ALSO
Почему не подключаются файлы в Yii2?

Почему не подключаются файлы в Yii2?

Привет, У меня есть файлhtacces в корне сайта:

444
Вызов php функции в October CMS

Вызов php функции в October CMS

Здравствуйте

439
Telegram Bot Laravel

Telegram Bot Laravel

Доброго времени сутокХотел сделать более-менее простенького бота, с использованием Laravel 5

847