Тесты RSpec + Selenium для .NET в Windows

9

Я разработчик Rails, работающий над TDD на Mac с RSpec, Capybara и Selenium webdriver. Теперь моя компания попросила меня использовать этот подход для среды .NET в Windows. Каков наилучший способ сделать это?

Я мог бы просто установить Ruby и использовать веб-драйверы RSPEC, Capybara и Selenium для интеграционного тестирования. Но как насчет юнит-тестов? Я также посмотрел на NSpec , но я не уверен, что смогу совместить это с Capybara или Selenium для интеграционных тестов.

Что было бы хорошим подходом здесь?

Джон
источник
1
Для Selenium Web Driver: вы смотрели список поддерживаемых языков? seleniumhq.org/about/platforms.jsp#programming-languages ? C # находится на вершине списка.
Док Браун

Ответы:

1

Это проблема в двух частях.

С точки зрения функционального / интеграционного тестирования, когда вы управляете программным обеспечением извне, тогда любой из этих подходов является действительным, здесь рассматривается набор навыков тех, кто создает и поддерживает тесты. В целом, я вижу тенденцию к знакомству с языком, используемым для инструментов (test / build / что угодно), как наиболее важную вещь, если вы не хотите в конечном итоге иметь одного эксперта в предметной области, от которого зависит команда.

Однако для модульного тестирования это должно быть то, что работает в среде разработки .NET - xUnit (или nUnit, но я больше предпочитаю xUnit) - это «обычный» выбор, но я не вижу причин не использовать NSpec.

Если вы хотите перейти на все .NET, то Coypu был вдохновлен Capybara

Murph
источник
0

Я бы отказался от Ruby и пошел бы с nUnit, SpecFlow и Selenium WebDriver для модульных, интеграционных и UI-тестов, если продукт написан на .net. Кроме того, я бы поменял макинтош на машину с Windows.

Я знаю, что можно смешивать языки и платформы, и я написал тесты ruby ​​для продуктов .net. Но это будет немного проще, если вы используете один и тот же стек для всего.

Вы можете добавить свои тестовые проекты в одно и то же решение и полностью исключить один и тот же процесс сборки. Разработчики смогут запускать тесты из визуальной студии с помощью пары кликов. Плюс это новый навык в вашем резюме.

Но, прежде всего, не нужно беспокоиться о необходимости установки дополнительных продуктов, поиска сторонних компонентов, которые заставляют их играть вместе, и поддержании сложного процесса CI.

Ewan
источник
Или держите Mac и устанавливайте параллели ...
Murph
зачем использовать плохое оборудование?
Эван
Потому что по большому счету Mac не уступает в аппаратном плане (кроме аберрации сенсорной панели)? Конечно, не к аппаратному обеспечению ПК люди, как правило, предлагаются
Murph