2015-07-20 1 views
1

Я очень новичок в TDD и пытаюсь создать свое первое приложение Djagno с тестами. Я немного смущен, когда речь заходит об общих представлениях. Я прочитал несколько мест (включая официальные документы) о том, что каждая точка зрения должна иметь связанные с ней тесты. Но я также прочитал, что вам следует избегать тестирования внутренних компонентов Django, потому что это необязательно.Должен ли я проверить свой общий DetailView в Django

Так что, если у меня есть представление, как это:

class ClinicView(DetailView): 
    model = Clinic 
    template_name = "directory/clinic.html" 

, который использует общий вид и отлично работает, я должен написать тест для него?

Чувство моего чувства - это то, что мне не нужно, потому что я использую общий вид, но на самом деле не нашел много, чтобы сказать мне, правильно ли я чувствую. Каковы лучшие практики, когда дело доходит до этого? Или что от меня ожидало бы, если бы я отдавал свой код другому человеку? Должен ли я хотя бы написать тест, чтобы убедиться, что моя модель и шаблон существуют? Заранее спасибо.

ответ

1

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

Например, если модель Клиники имела сложный метод, который рассчитал некоторый результат, вы бы хотели, чтобы тесты гарантировали, что это делает то, что вы думаете.

Если у вас было что-то, что вы часто меняли, а другие могли входить и меняться, вам нужны тесты, чтобы убедиться, что он по-прежнему функционирует после вашего изменения. Представления Django уже протестированы. Если вы не добавите кучу пользовательской логики в представление (который, вероятно, вы, вероятно, должны вставлять в ModelManager), нет смысла тестировать его повторно с помощью автоматических тестов.

Тестирование - это здорово, и я люблю его! Но я ненавижу поддерживать его, поэтому я не стремлюсь к полному охвату. После того, как вы накрываете свой собственный код тестированием, вы получаете уменьшающуюся отдачу, проверяя каждую маленькую кусочек.

Я когда-то работал в компании, которая немного с ума сошла и хотела, чтобы я написал тесты для автоматизированных тестов. Не нравится (:

Смежные вопросы