Ресурсы для TDD, направленные на веб-разработку Python

Я хакер, а не программист на полный рабочий день, но я хочу начать свой собственный полный эксперимент по разработке приложений. Прошу прощения, если мне не хватает чего-то легкого здесь. Я ищу рекомендации для книг, статей, сайтов и т.д., Чтобы узнать больше о разработке, основанной на тестах, специально совместимой с программным обеспечением для веб-приложений Python. Я понимаю, что Python имеет встроенные инструменты для оказания помощи. Что было бы лучшим способом узнать об этом вне RTFM? Я искал StackOverflow и нашел книгу Кента Бэка и Дэвида Астелса по этому вопросу. Я также добавил в закладки статью в Википедии, поскольку у нее есть много этих типов ресурсов.

Есть ли какие-то конкретные, которые вы бы рекомендовали для этого языка/приложения?

Ответы

Ответ 1

Я написал серию блогов на TDD в Django, который охватывает некоторый TDD с рамки тестирования носа.

Существует множество бесплатных онлайн-ресурсов для изучения TDD:

Для тестирования веб-приложений сначала проверьте или иначе, я бы рекомендовал twill и selenium в качестве инструментов для использования.

Ответ 2

Могу ли я подключить собственный учебник, который охватывает материалы официального учебника Django, но использует полный TDD полностью, включая "правильные" функциональные/приемочные тесты, используя инструмент автоматизации браузера Selenium... http://tdd-django-tutorial.com

[update 2014-01] Теперь у меня есть книга, которая скоро будет опубликована OReilly, которая охватывает все материалы из учебника и многое другое. Полная информация доступна в Интернете (бесплатно) по адресу http://www.obeythetestinggoat.com

Ответ 3

Я знаю, что книга Кента Бэка (о которой вы упомянули) охватывает TDD в Python на довольно хорошую глубину. Если я правильно помню, последняя половина книги посвящена разработке структуры unit test в Python. Тем не менее, ничего особенного для веб-разработки, это проблема во многих ресурсах TDD, которые я прочитал. Лучшей практикой является сохранение вашей бизнес-логики отдельно от вашей презентации, чтобы сделать ваш BL более проверяемым, среди других причин.

Еще одна хорошая книга, которую вы можете захотеть заглянуть, - xUnit Test Patterns. Он не использует Python, но он много говорит о конструировании для тестирования, использовании mocks и заглушек (которые вам понадобятся для тестирования веб-приложений) и автоматизации тестирования. Это более продвинутый, чем книга Бэка, что делает его хорошим продолжением.

Ответ 4

Я бы рекомендовал "XUnit Test Patterns: Рефакторинг тестового кода" Джерарда Мезароса. Это не Python или Web, но это хорошая книга по TDD в целом и xUnit в частности. Поскольку python unittest на самом деле является реализацией xUnit ( "версия JUnit на Python", как говорят документы), я бы сказал, что книга очень полезна для тестеров модулей Python.

У него есть онлайн-версия на xunitpatterns.com.

Ответ 5

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

Ответ 6

Очень хорошая структура unit test также trial из закрученного проекта.

Ответ 7

Немного поздно в игру с этим, но я искал книгу TDD, ориентированную на Python, и я только что нашел Python Testing: Beginner Guide by Дэниел Арбакл. У меня еще не было возможности прочитать его, но когда я это сделаю, я постараюсь не забыть прочесть здесь. Однако отзывы на странице Amazon выглядят довольно позитивно.