Каков качественный реальный пример TDD в действии?[закрыто]

StackOverflow https://stackoverflow.com/questions/23612

  •  09-06-2019
  •  | 
  •  

Вопрос

Каков качественный реальный пример TDD в действии?Какие существуют проекты с открытым исходным кодом для малого и среднего бизнеса в .net, которые демонстрируют лучшие практики в TDD и могут служить ориентиром для правильного выполнения TDD?


Я больше ищу пример проекта (ов) "живое дыхание", который служит хорошим примером TDD.Что-то, что дополняло бы книги и ссылки, которые объясняют и демонстрируют этот процесс изолированно.

Что-то, что было бы полезно для начинающего разработчика, который хочет повысить уровень от начинающего / среднего специалиста по TDD...

Это было полезно?

Решение

Вот несколько примеров:

  • НАнит
  • CodeCampServer Любой из
  • Инструменты Rhino из Айенде (например ,Носорог Издевается)
  • ASP.NET MVC
  • Cuyahoga (система CMS)
  • Свободно владеет NHibernate

Другие советы

Это может быть или не быть тем, что вам нужно, но библиотека MS Enterprise имеет полный набор модульных тестов (NUnit) как часть дистрибутива исходного кода, я бы расценил это как вполне реальный мир.

Кев

TDD - это процесс, который в основном происходит между фиксациями в репозитории.

При просмотре проектов с открытым исходным кодом вы увидите только моментальные снимки кода, которые делаются при фиксации разработчиком.

Не должно быть никакой практической разницы между коммитами, сделанными разработчиком, который создает хороший дизайн и реализует множество модульных тестов, и хорошим разработчиком, который практикует TDD.Разница в том, что TDD-процесс оказывает давление на разработчика, требуя создать чистый дизайн и внедрить множество модульных тестов.

Просмотр проекта с открытым исходным кодом, управляемого тестированием, позволит вам увидеть только результат TDD-процесса, а не то, как самостоятельно управлять тестированием.

Чтобы по-настоящему научиться этому, вам действительно нужно понаблюдать, как кто-то занимается TDD.Книга может помочь, но трудно показать процесс в книге.Гораздо лучше видеть, как это делается в режиме реального времени.Лучшим способом было бы программировать в паре с кем-то, кто ориентирован на тестирование.Следующим лучшим вариантом была бы живая демонстрация на конференции или собрании - возможно, у вас есть локальная группа пользователей?

В противном случае, есть несколько онлайн-видео-демонстраций.Вот два:

Если вы изучаете это для личного использования TDD, я не думаю, что просмотр других проектов действительно поможет вам.Вместо этого вам следует погрузиться с головой и просто делать это, а по ходу дела учиться.

Чтобы начать, ознакомьтесь с эта статья о тестировании и о том, как начать, а также эта книга о TDD Кента Бека (очень простой, понятный и проницательный).

Я сам не просматривал все веб-трансляции, поэтому не могу подтвердить, насколько хорошо Роб Конери внедрил TDD, но его Серия витрин магазинов MVC предполагается, что он использует TDD.

У Рона Джеффриса есть много хороших статей на xprogramming.com.Если вы занимаетесь C #, поищите "Приключения в C #".Или купите эту книгу.

Его стиль письма охватывает большинство аспектов работы с TDD, даже те неправильные повороты, которые нам суждено совершить.За эти годы я выучил множество его статей, даже на более экзотических языках.

Я бы повторил комментарий Расмуса о том, что полезнее наблюдать, как кто-то занимается TDD.Два ресурса, которые я нашел действительно полезными:

  1. У Джеймса Шора есть видеоряд на YouTube где он создает небольшой фрагмент программного обеспечения с нуля, используя TDD и записывая каждый шаг процесса.На мой взгляд, это должно быть обязательным просмотром для всех, кто подумывает о том, чтобы начать с TDD, я только недавно наткнулся на это, и я удивлен, что у него нет большей экспозиции.Там 120 15-минутных видеороликов - это ОЧЕНЬ МНОГО материала.

  2. Дерек Грир из Los Techies имеет серия постов прохождение процесса создания базовой игры в крестики-нолики.Это тоже очень хорошо, но, очевидно, не так глубоко, как предыдущий ресурс.Я бы порекомендовал это, если у вас не так много времени.

Около недели назад в IT Conversations был опубликован очень интересный доклад Кента Бека, в котором основное внимание уделялось TDD (но также затрагивались паттерны и экстремальное программирование).Ничего "мясистого" в сравнении с подробными инструкциями по TDD, но в любом случае информативно.Определенно стоит послушать, если вы совершенствуете свои навыки TDD.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top