Существует ли автономный браузер для .NET (для автоматизированных тестов веб-интерфейса)?
-
21-09-2019 - |
Вопрос
Существует ли безголовый браузер для .NET?
Я ищу это в контексте тестирования.
Исходя из Java, я думаю о чем-то похожем на HtmlUnit (http://htmlunit.sourceforge.net/), который сам по себе является основой для различных инструментов более высокого уровня, таких как Canoo WebTest или Celerity.
Я хотел бы создать автоматизированные тесты пользовательского интерфейса для веб-приложений в среде .Net, но не использовать удаленное взаимодействие через браузер (Watin, Selenium...).
Если возможно, я хотел бы придерживаться решения .Net и избегать использования инструментов Java или Ruby.
Какие есть варианты?Что вы, ребята, делаете?
Спасибо
Решение
Если вы непреклонны в использовании чистых решений .Net, у вас есть несколько полезных вариантов, хотя ни один из них не является действительно хорошим.
- HtmlUnit с IKVM.Это позволит вам запустить HtmlUnit в .NET, но я обнаружил, что преобразованный код обычно работает намного медленнее, чем HtmlUnit сам по себе.
- SDK для извлечения данных.Вы можете обернуть это, чтобы создать собственный обработчик запросов, который будет обрабатывать файлы cookie, формы и т. д.
- Система.Net.WebRequest.Требует самой тяжелой работы, но в любом случае лежит в основе большей части того, с чем вам придется работать.
Вы также можете рассмотреть возможность просмотра Ликвидтест, но это недешево:Лицензии разработчика начинаются от 2000 долларов.А если вы хотите запустить его на сервере непрерывной интеграции, это обойдется вам еще в 1000 долларов за серверную лицензию.
По моему мнению, хотя библиотеки и языки .NET предоставляют некоторые мощные функции, набор вспомогательных инструментов часто не дотягивает до конкурентов на других языках в некоторых областях.К сожалению, тестирование веб-интеграции — одна из таких областей.
Другие советы
Возможно, вы захотите ознакомиться с новыми функциями веб-тестирования в Visual Studio 2010:
Вы можете бесплатно скачать бета-версию 2 VS2010 и опробовать ее самостоятельно.
Видишь ли, если Безголовый браузер для C# (.NET)? и отключить видимость IE при использовании WatiN это то, что вы ищете (если да, я могу расширить этот ответ более подробно)
Под удаленным управлением браузером я предполагаю, что вы имеете в виду удаленное управление сторонним браузером.Selenium предлагает драйвер для Java-браузера htmlUnit, который представляет собой автономный браузер (без графического интерфейса).http://seleniumhq.org/docs/03_webdriver.html#htmlunit-driver