Ресурсы для 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 выглядят довольно позитивно.