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

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


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

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

22.08.2008 21:57:36
8 ОТВЕТОВ
РЕШЕНИЕ

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

  • NUnit
  • CodeCampServer Любой из
  • Инструменты Rhino от Ayende (например, Rhino Mocks)
  • ASP.NET MVC
  • Cuyahoga (система CMS)
  • Свободный NHibernate
6
22.08.2008 23:05:10

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

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

4
22.08.2011 22:37:17

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

1
22.08.2008 22:15:49
Я тоже его не видел, но я видел его вступление BDD, и это было довольно хорошее введение в предмет, поэтому я ожидаю, что материал MVC Storefront тоже заслуживает изучения.
Piotr Owsiak 27.12.2010 14:47:24

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

Кев

3
22.08.2008 22:17:47
Рой Ошеров сделал видео-обзор тестов Unity (см. Его блог) и «Рой знает тестирование» :)
Piotr Owsiak 27.12.2010 14:44:40

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

0
22.08.2008 22:20:05

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

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

1
30.08.2008 09:18:19

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

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

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

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

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

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

3
16.01.2009 09:37:40

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

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

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

1
26.08.2011 08:30:19