Правильный способ испытаний в рельсах - PullRequest
1 голос
/ 16 декабря 2010

Я новичок в rails, и недавно я прочитал в Интернете (так что, должно быть, это правда), что библиотека TDD, поставляемая с rails, несовместима с RSpec, но я также прочитал, что RSpec - это правильный инструмент для выполнения тестовое задание.

Итак, мой вопрос: если это правда, что является правильным инструментом для проведения испытаний с рельсами: рельсы TDD или RSpec? Или эти 2 инструмента всего разного назначения?

Спасибо за разъяснения !!!

Ответы [ 3 ]

2 голосов
/ 16 декабря 2010

TDD означает разработку через тестирование.Это методология, а не библиотека.

Rails поставляется с Ruby's Test :: Unit.Он может быть легко заменен другими библиотеками, такими как Rspec, если вы захотите это сделать.

Не существует «правильного пути» в отношении того, какой инструмент использовать.Все зависит от предпочтений.Я предпочитаю Rspec лично ...

0 голосов
/ 06 июня 2011

Существует множество инструментов для тестирования рельсов и других веб-приложений в самых разных аспектах. Но если вы новичок в тестировании , я настоятельно рекомендую вам начать с изучения собственной инфраструктуры тестирования Rails , прежде чем начинать использовать другие инструменты.

Изучение и последующее освоение одной инфраструктуры тестирования облегчает в будущем понимание плюсов и минусов других структур и заставляет их работать в унисон.

Вы можете начать с тестирования следующих вещей:

  • Модульное тестирование ваших моделей
  • Функциональные тесты для ваших контроллеров
  • Информация о приборах и способах загрузки данных испытаний

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

Подробнее о тестировании Rails читайте здесь.
http://guides.rubyonrails.org/testing.html

Ручное поисковое тестирование
Как бы я ни любил автоматизированное тестирование, оно, IMHO, не заменит ручное тестирование. Основная причина в том, что автоматизированный пользователь может делать только то, что ему говорят, и проверять только то, что ему сообщили, для того, чтобы он воспринимался как пройденный / неудачный. Человек может использовать свой интеллект, чтобы находить ошибки и задавать вопросы, которые появляются при тестировании чего-то другого.
Подробнее о смешивании автоматического и ручного тестирования читайте в одном из моих ответов здесь:
Какие методы тестирования вы используете для разработки веб-сайтов?

0 голосов
/ 16 декабря 2010

RSpec - это чистый Ruby и очень хороший способ написания тестов для вашего кода. Его легко интегрировать с помощью Gems и с ним легко работать.

...