Я знаком с концепциями (проходил тестовые занятия в колледже), но пока не уверен, как их реально использовать, поскольку никогда не работал над «настоящим» проектом TDD.
Я собираюсь начать разработку проекта с использованием Ruby on Rails (скорее всего, с использованием 2.3). Это приложение будет использоваться для управления данными, пользователями и некоторыми файлами. Поначалу это не будет слишком сложно, но в ближайшие 6 месяцев это может сильно измениться, поэтому я считаю, что сейчас самое время заняться TDD.
У меня есть основная идея, как это сделать, но мне все еще нужны некоторые советы и подсказки:
Какую статью по Ruby on Rails TDD 101 я должен прочитать?
Что мне нужно проверить?
Какой драгоценный камень / плагин я должен использовать?
Должен ли я использовать rspec ? Что-то другое?
Как только я получу все свои тестовые классы, как мне их развернуть? (например: Непрерывная интеграция)
Как много времени занимает TDD?
Нужно ли мне читать книгу об этом или я могу получить все, просто поиграв с ней и прочитав онлайн-уроки? Если мне нужно прочитать книгу, какую книгу?
Мне нравится учиться на примерах, поэтому кто-то может сказать мне, как я поступил бы и использовал подход TDD для решения этой проблемы:
У меня есть компании. У меня есть контакты. Контакт может быть связан с 1 компанией. Компания может иметь несколько контактов. Я хочу создать способы создания контактов, компаний и связи контактов с компаниями.
Вам не нужно использовать этот пример в своем ответе, но это поможет :)