Есть ли лучший инструмент модульного тестирования, чем ОЖИДАНИЕ для веб-тестирования Ruby? Или дефакто стандарт? Какие инструменты модульного тестирования вы используете?





Мы используем его для тестирования всех наших веб-приложений, а не только для веб-приложений на основе Ruby. Мы изучили ряд продуктов, но сочли, что WaTiR лучший. Кроме того, он находится на Ruby, поэтому мы можем похлопывать себя по спине и рассказывать друг другу, насколько мы круты в использовании Ruby.
В конце концов, несколько недель назад я поработал с WaTiR, а также с селеном. Я должен сказать, что селен было намного приятнее использовать.
Мы посмотрели на WaTiR несколько лет назад и отказались от него по разным причинам, в основном из-за простоты использования по сравнению с подобными селену (например, при написании кода и визуальных инструментов).
Стоит упомянуть, что люди, которые занимались сборкой тестов, не являлись разработчиками, не говоря уже о разработчиках Ruby.
Это также не было для приложений Ruby, но поскольку это Интернет и Интернет обслуживают HTML, не должно иметь значения, на чем он построен.
Используется как инструмент веб-сканирования. Как я слышал, WaTiR также отлично подходит для тестирования. Имейте в виду, что у каждого браузера есть собственная версия WaTir: WaTiR (IE), FireWaTir (Firefox) и SafariWatiR (Safari).
После долгого просмотра официанта моя команда остановилась на Selenium.
Среди многих причин были:
Тот, о котором упоминал Стивен, У Selenium лучший браузер и кроссплатформенная поддержка. В настоящее время мы есть машины под управлением Mac, Linux, и окна с сафари, firefox, и т.е.
Тесты на селен, казалось, работали быстрее чем официант, особенно если взять преимущество селеновой сетки.
Селен-тесты могут быть написаны на более широкое разнообразие языков, чем просто Рубин.
Selenium имеет простую в использовании IDE.
Стоит отметить, что проект FireWatir был включен в ядро Watir, а кодовые базы интегрированы с выпуск 1.6.2 на прошлой неделе.
Я не чувствовал, что могу отметить один из этих вопросов как ответ.
Из ответов я вижу, что WaTiR - один из лучших, если вы придерживаетесь Ruby в качестве языка тестирования.
Я лично согласен с Райаном Гестом насчет Selenium из-за кроссбраузерной поддержки и языкового подхода. С другой стороны, он использует свой собственный язык, так что это еще одна вещь, которую нужно выучить.
У Скотта Хансельмана есть подкаст под названием Обзор инструментов функционального тестирования, в котором обсуждается этот вопрос.
Когда дело доходит до этого, я думаю, ответ состоит в том, что WaTiR - отличный инструмент для тестирования, если он подходит для вашей ситуации.
Я использую Watir с 2007 года, но больше как инструмент создания сценариев, чем инструмент модульного тестирования.
Как тестировщик, выполняющий ручной тест, он очень полезен для некоторых повторяющихся задач, но я никогда не удосужился использовать его «должным образом» (создание тестовых примеров, чтобы увидеть, какие функции не работают и еще много чего).
Кроме того, я показал Watir некоторым своим друзьям, которые являются программистами, и они используют его, чтобы помочь им при разработке систем, написанных на Java, PHP и даже ASP, поэтому то, что Watir является проектом Ruby, не означает, что вы следует использовать его только с другими проектами Ruby :)
Я использую Watir для функционального тестирования.
Для модульного тестирования, если это вообще возможно, предпочтительнее использовать решение без браузера, такое как webrat или capybara, IMHO, поскольку они намного быстрее и не усложняют ситуацию, требуя вызова экземпляра браузера и т. д.
Вы хотите, чтобы модульные тесты были БЫСТРЫМИ, чтобы их можно было запускать с каждой сборкой CI. Затем создайте ночную сборку и пусть она запускает ваши функциональные тесты, таким образом, если на их выполнение уйдут часы, это не проблема. (и как только вы получите большой набор из тысяч функциональных / приемочных / регрессионных тестов, потребуется несколько часов для запуска даже с более быстрым браузером, таким как новый IE9, Firefox или Chrome.
Я также должен отметить, что с новым проектом Watir-Webdrive вы можете получить лучшее из обоих миров. Легко кодируемый, очень «Rubyesque» Watir API и широкая поддержка браузеров (IE, FF, Chrome, Opera, Headless) серверной части Selenium Webdriver.
Чтобы не срезать волосы или что-то в этом роде, но разве такие инструменты, как watir и selenium, нельзя называть инструментами функционального тестирования, а не инструментами модульного тестирования?