Дек 5 2011
Python/Django тестирование (unittest)
wikibooks.org: Перевод Python документации, раздел unittest.
python.org: Оригинальная статья (англ.).
Статьи:
Habrahabr: Python. Тестирование. Начало.
Habrahabr: Тестирование проектов Django.
Другие инструменты тестирования: pytest, nose, attest.
Инструмент для определения покрытия кода тестами: coverage.py (интерграция coverage в Django)
На закуску, понравился комментарий под статьей:
думаю проблема не в django-webtest, а в том, что:
> Я сам с трудом понимаю какие там имена у полей формы.
написание теста является одним из способов формализации требований. тест обязан ломаться, когда требования меняются и код рефачится — это фича. :)
если переделка кода вызывает ломку тестов, которые по логике не связанны с текущим рефакторингом, значит сами тесты составлены неправильно — проблема или в неправильно декомпозиции или в неправильно выбранном уровне абстракции. обычно это происходит, когда тест безосновательно пытается тестировать требования, которые не связаны с фичей, либо привязывается к каким-то низкоуровневым деталям реализации.
