Русские документы
Ежедневные компьютерные новости RSS rusdoc.ru  Найти :
http://www.rusdoc.ru. Версия для печати.

Тесты, а нужны ли?

Раздел: Programming / Python @ 13.07.2008 | Ключевые слова: framework Django tests тесты

Автор: Роман Толкачёв
Источник: habrahabr

Да нужны. Замечу, что речь идёт об автоматизированных тестах. Эта штука просто жизненно необходима для особо функционального (базового, низкоуровнего) кода, каковой содержит сам framework Django. Но почему бы не применить тесты для сайтов? И это не просто "по приколу", а некая защита от головняка.

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

Итак, Django предоставляет возможность писать тесты для приложений и это всё облегчает.

В большинстве сайтов, ничего не может обрушиться просто так, это скорее всего связано с обратно несовместимыми изменениями в Django, либо влиянием таких изменений на сторонние приложения (django-voting e.t.c.). Написав простейший тест, который проверит, а возвращает ли страница корректный код (т.е. 200) мы при первом же запуске всех тестов определим неработающие страницы, а соответственно и проблемный код.

Итак, в конце всего этого короткий код (за остальным, обратитесь к документации):

from django.test import TestCase



class LentaTest(TestCase):

    def test_index(self):

        response = self.client.get(`/lenta/`)

        self.failUnlessEqual(response.status_code, 200)


Код помещаем в appname/tests.py, а чтобы запустить тесты, делаем manage.py test appname



Вернуться в раздел: Programming / Python
© Copyright 1998-2012 Александр Томов. All rights reserved.