В какой книге вы бы посоветовали выучить разработку, основанную на тестах? Предпочтительно языковой агностик.
Тест-драйв
Ответ 1
Ответ 2
Растущее объектно-ориентированное программное обеспечение, основанное на тестах Addison-Wesley, - это касается насмешливых фреймворков, в частности JMock и Hamcrest.
Из описания книги:
Стив Фриман и Нат Прайс описывают процессы, которые они используют, принципы проектирования, к которым они стремятся, и некоторые инструменты, которые помогают им выполнять свою работу. На расширенном проработанном примере вы узнаете, как работает TDD на нескольких уровнях, используя тесты для управления функциями и объектно-ориентированной структурой кода, а также используя Mock Objects для обнаружения и последующего описания отношений между объектами. Кроме того, в книге систематически рассматриваются проблемы, с которыми команды разработчиков сталкиваются с TDD - от интеграции TDD в ваши процессы до тестирования ваших самых сложных функций.
РЕДАКТИРОВАТЬ: Я сейчас читаю Работать эффективно с Legacy Code от Michael Feathers, что довольно хорошо. Из описания книги:
- Понимание механизма изменения программного обеспечения: добавление функций,
исправление ошибок, улучшение дизайна, оптимизация производительности- Получение устаревшего кода в тестовом жгуте
- Написание тестов, которые защитят вас от новых проблем
- Эта книга также включает в себя каталог из двадцати четырех методов разрушения зависимостей, которые помогут вам работать с элементами программы изолированно и вносить более безопасные изменения.
Я уже читал его, это одна из лучших книг по программированию, которые я когда-либо читал (лично я считаю, что это должно называться "Рефакторинг в тестируемость" - он описывает процессы, позволяющие сделать ваш код тестируемым). Потому что тестируемый код - это хороший код.
Ответ 3
Для меня это самый лучший:
- Разработка через тестирование: на примере Кента Бека
Ответ 4
Довольно недавняя разумно написанная книга Искусство модульного тестирования. Я удивлен, что здесь не упоминалось.
Ответ 5
Книга Астелса - хорошее введение, книга Бека хороша в основополагающих концепциях, у Лассе Коскела есть новшество (Test Driven: TDD и Acceptance TDD для разработчиков Java). Книга Ошерова, по его словам, посвящена модульному тестированию, а не TDD. Я не уверен, что книга TDD Прагматики постарела так же как их оригинальная книга.
В большинстве случаев это Java или С#, но вы должны сами это понять.
Ответ 6
Я большой поклонник почти чего-либо из Pragmatic Bookshelf, но эти два действительно помогли мне довести до места:
Прагматический программист: от Journeyman to Master. Это очень хорошо. Я бы рекомендовал его любому разработчику.
Прагматическое тестирование модуля в С# с NUnit, 2nd Edition. Не позволяйте титулу пугать вас. Концепции довольно языковые, а также примеры с С#.
Ответ 7
Тестирование, разработанное Дейвом Астелсом : практическое руководство