Я собираюсь начать писать некоторые автоматизированные тесты нашей презентации в ближайшее время. Кажется, что все рекомендуют WatiN и Selenium . Что вы предпочитаете для автоматического тестирования веб-форм ASP.NET? Какие из этих продуктов работают лучше для вас?
В качестве примечания я заметил, что WatiN 2.0 находится в CTP с марта 2008 года, это что-то, что должно беспокоить?
asp.net
selenium
automation
automated-tests
watin
DavGarcia
источник
источник
Ответы:
Просто хочу сказать, что в настоящее время я усердно работаю над бета-версией WatiN 2.0 где-то в первом квартале 2009 года. Это будет серьезное обновление до текущих версий CTP 2.0 и в основном предоставит вам те же функциональные возможности для автоматизации FireFox и IE, что и Версия 1.3.0 предлагает для автоматизации IE.
Так что никаких проблем нет.
Надеюсь, это поможет вам сделать выбор. Йерун ван Менен Ведущий разработчик
источник
Если вы хотите сделать серьезные долгосрочные инвестиции в систему, которая будет и далее совершенствоваться и поддерживаться сообществом, Selenium, вероятно, будет вашим лучшим выбором. Например, я только что натолкнулся на эту информацию в блоге Мэтта Райбла:
Я также недавно побывал на одном из собраний Selenium и узнал, что Google вкладывает серьезные ресурсы в улучшение Selenium и его интеграцию с WebDriver, который является инструментом автоматического тестирования, разработанным Саймоном Стюартом. Одним из основных преимуществ WebDriver является то, что он контролирует сам браузер, а не работает внутри браузера как приложение Javascript, а это означает, что основные камни преткновения, такие как проблема «того же источника», больше не будут проблемой.
источник
Мы протестировали оба и решили пойти с WaTiN. Как уже отмечали другие, у Selenium есть некоторые приятные функции, которых нет в WaTiN, но мы столкнулись с проблемами при работе Selenium, и как только мы это сделали, это было определенно медленнее при запуске тестов, чем WaTiN. Если я правильно помню, проблемы с установкой, с которыми мы столкнулись, связаны с тем, что у Selenium было отдельное приложение для управления реальным браузером, в котором WaTiN делал все в процессе.
источник
Я пытался их обоих, и вот мои первые мысли ...
WatiN
Хорошо
Плохо
Пример сценария (C #). Вы не можете сделать это с Selenium (хотя я не знаю, по крайней мере):
Селен
Несмотря ни на что, я пошел с WatiN в конце; Я в основном намереваюсь писать небольшие скриншоты приложений и хочу использовать LINQPad для разработки. Присоединение к удаленному экземпляру IE (тот, который я сам не породил) - большой плюс. Я могу покопаться в существующем экземпляре ... затем запустить немного скрипта ... затем снова поиграть и т. Д. С Selenium это сложнее, хотя я полагаю, что в сценарий могут быть встроены "паузы", в течение которых я мог бы возиться напрямую с браузером.
источник
Самое большое отличие состоит в том, что Selenium поддерживает разные браузеры (не только IE или FF, см. Http://seleniumhq.org/about/platforms.html#browsers .
Кроме того, Selenium имеет сервер удаленного управления ( http://seleniumhq.org/projects/remote-control/ ), что означает, что вам не нужно запускать браузер на той же машине, на которой выполняется тестовый код. Поэтому вы можете протестировать свое веб-приложение. на разных платформах ОС.
В общем, я бы рекомендовал использовать Selenium. Я использовал WatiN несколько лет назад, но я не был удовлетворен его стабильностью (возможно, к настоящему времени она улучшилась). Самым большим плюсом для Selenium для меня является тот факт, что вы можете протестировать веб-приложение. в разных браузерах.
источник
Ни. Используйте Нутру. Оборачивает Селен. Гораздо более прочный. https://github.com/featurist/coypu
Обнови Е. Оливер, ты прав. Хорошо, почему это лучше? Лично я обнаружил, что драйвер Selenium для IE, в частности, очень хрупкий - есть ряд «стандартных» исключений драйверов, которые я снова обнаружил при запуске Selenium для модульных тестов на тяжелых веб-сайтах ajax.
Я упоминал, что хочу написать свои скрипты на c # как тестовый проект? Да Приемочные испытания в рамках непрерывного развертывания сборки.
Ну Coypu имеет дело с вышеизложенным. Это обертка для Selenium, которая позволяет испытательные приборы, такие как,
... который раскручивает браузер (настраиваемый бренд) и запускает скрипт. Он отлично работает с областями действия и ОЧЕНЬ расширяется.
На GitHub есть больше примеров, и, как упоминает Олвье, видео Адриана превосходно. Я думаю, что это лучший способ проводить тесты на основе браузера в мире .Net и пытается следовать его одноименной версии Ruby.
capybara
источник
Я использовал оба, они оба, кажется, работают хорошо. Я склоняюсь к Selenium, так как он, кажется, лучше поддерживает Ajax. Я считаю, что WaTiN повзрослел, но с тех пор, как я в последний раз использовал его, он должен иметь то же самое.
Самое главное, в какой среде разработки вы хотели бы находиться? У Selenium и Watin есть рекордеры, но Selenium находится в браузере, а watin - в визуальной студии. + и - к обоим.
источник
До сих пор мы являлись чисто магазином Microsoft для предоставления решений для предприятий и работали с WatiN. Это может измениться в будущем.
Как более свежий источник:
Microsoft напечатала в журнале MSDN 12/2010 BDD-учебник для начинающих с комбинацией SpecFlow и WatiN (классная разработка, основанная на поведении BDD). Его автор Брэндон Сатром (Evangelist) также опубликовал в декабре 2010 года видео-трансляцию с подробным обучением 1: 1 своих выводов.
Существует Whitepaper от 04/2011 по поддержке ATDD / BDD с SpecLog, SpecFlow и Team Foundation Server (Acceptance Test Driven Development / Behavior Driven Development) от Christian Хассы , чья команда построена SpecFlow.
источник
Я использую Watin, но не использовал Selenium. Я могу сказать, что быстро встал и побежал на Ватине, и у меня было мало проблем. Я не могу придумать ничего такого, что я хотел бы сделать, но я не мог с этим разобраться. НТН
источник
Обычно я использую Selenium, в основном потому, что мне нравится плагин Selenium IDE для FireFox для записи начальных точек моих тестов.
источник
Я рекомендую WebAii, потому что это то, с чем я имел успех, и когда я использовал его, у меня было мало проблем. Я никогда не пробовал Selenium, и я мало помню, как использовал WaTiN, по крайней мере, до такой степени, что я мог заставить его работать успешно. Я не знаю ни одного фреймворка, который бы изящно работал с диалогами Windows, хотя в WebAii есть интерфейс для реализации ваших собственных обработчиков диалогов.
источник
Я подумал об использовании обоих. Я использовал рекордер для Selenium, чтобы построить несколько тестов в FF. Я попытался сделать то же самое в Watin и обнаружил, что Watin Recorder (2.0.9.1228) абсолютно бесполезен для наших сайтов . Оказалось, что он рендерит сайт в IE6, что делает наш сайт практически непригодным для записи. Мы не поддерживаем IE6. Я не мог найти способ изменить браузер, который он использует. Я нашел там только один Watin Recorder. Если есть более одного или один, который обновляется, пожалуйста, прокомментируйте.
IDE Selenium Recorder для Firefox прост в использовании и переносит тесты на C #. Это не здорово в этом. Я не смог заставить работать тестовые наборы, несмотря на то, что читал один или два сообщения в блоге с обходными путями. Так что есть немного манипуляций с сгенерированным кодом. Тем не менее, он работает на 90%, и это лучше, чем альтернатива.
За мои деньги / время Selenium превосходит просто по простоте создания новых тестов . В IE нет хороших панелей инструментов для разработчиков, которые были бы так же хороши, как Firebug , поэтому я начинаю свою разработку в Firefox, поэтому наличие хорошего рабочего рекордера в Firefox - огромный бонус.
Мой вывод был очень похож на цитату Черчилля о демократии: Selenium - худшая форма автоматизированного тестирования пользовательского интерфейса. За исключением всех остальных.
источник
В случае опасности, я бы порекомендовал Axe / WatiN. Axe позволяет писать тесты в Excel «ручными» тестерами, не зная базового «языка» тестов. Для написания сделанных на заказ действий требуется «Техник» (IE. Сегодня мне пришлось сделать несколько сложный поиск и перекрестную ссылку на таблицу), но после написания эти действия могут быть использованы в тестах нетехническими тестировщиками.
Я также слышал, что проект UK Government Gateway (который, как мне кажется, предусматривает автоматические тесты для тестов 6K +) недавно перенес все свои тесты с Ax / Winrunner на Ax / Watin в течение недели !! И многие тесты довольно сложные - я знаю, как работал над этим несколько лет назад ...
Сейчас я смотрю на Selenium, поскольку потенциальный клиент использует его. Но я предлагаю немного взглянуть на Axe как на слой над инструментом «рабочая лошадь».
источник
Если вам нужен доступ к фреймам, модальным диалогам и междоменным фреймам, WatiN - это то, что вам нужно. Selenium не может обрабатывать фреймы, которые он выбрасывает в качестве исключений timeout. Если вы можете сделать намного больше вещей, особенно если веб-сайт использует специфичные для IE вещи, такие как ShowModalDialog и т. Д. WatiN очень хорошо справляется со всеми из них. Я мог бы даже сделать междоменный доступ к iframe.
источник
Вам нужно будет выполнить и то, и другое, если вам нужно выполнить IE и FF-тестирование, но они будут хорошо работать только при тестировании презентации. Они не могут обнаружить, если один элемент слегка отключен, только то, что элементы присутствуют. Я не знаю ничего, что могло бы заменить человеческий глаз для тестирования пользовательского интерфейса / презентации, хотя вы могли бы сделать несколько вещей, чтобы помочь ему (делайте скриншоты страниц на каждом шаге для просмотра пользователями).
источник