2010-09-12 3 views
13

У меня есть паралич анализа, который рассматривает все варианты функционального тестирования для нового приложения grails (v1.3.4). Я посмотрел наКаковы преимущества и недостатки функциональных тестов для нового приложения Grails?

и там должны быть и другие. Я думаю, что некоторые из критериев, которые я хотел бы использовать для принятия решения включают в себя (в произвольном порядке):

  • Вероятного долголетие, активное развитие
  • Можно сделать AJAX/JavaScript
  • Поддержку PageObject или аналогичные модели
  • зрелость
  • Безголовый (например HtmlUnit) в порядке, особенно, если он делает вещи идут быстрее
  • Хорошая отчетность
  • Поддержки NTLM учетных данных поставщика или аналогичного
  • Компактных, надежные тестовые скрипты
  • принимает преимущество заводного языка

я бы особенно интересно услышать от людей, которые пытались более одной рамки. Благодаря!

ответ

7

Я поддерживаю плагин для WebTest, но я бы рекомендовал попробовать Geb. Я еще не использовал его лично в проекте, но думаю, что он будет отслеживать большинство ваших критериев.

Это наиболее активно разработанный (ИМО), но совершенно новый. Он построен на WebDriver/Selenium, поэтому также должен хорошо соответствовать вашему прошлому опыту.

WebTest не видит много развития в эти дни и не имеет встроенной поддержки для объектов страницы. Но это дает вам отличные отчеты. Это недостаток - это историческая основа Ant. Это затрудняет тестирование в динамическом режиме, так как ваши тестовые шаги создаются при выполнении тестового примера, а затем фактический тест выполняется как второй проход.

Я также использовал GFunc, но отсутствие отчетности - настоящая боль, и это не так важно, как Geb. Это гораздо более «отличный», чем WebTest, хотя и является тонкой оболочкой над HtmlUnit, что позволяет вам легко «свернуть свои собственные» функции тестирования.

веселит

Ли

+0

Lee - спасибо для этого. – John

4

Grails Функциональный тест является HtmlUnit только. Я бы не предложил кодирование непосредственно в HtmlUnit в наши дни с другими доступными инфраструктурами, которые дают вам объект страницы и лучшую абстракцию из коробки.

Я использовал плагин webdriver, который, кажется, работает очень хорошо и имеет объект страницы, встроенный, но поддержка объекта страницы связана с иерархией JUnit, что затрудняет мне использование, потому что я хочу также использовать Огурец.

Я очень взволнован Геб и слышу много историй успеха с ним, но не получил, чтобы закончить настройку самостоятельно.