LINUX.ORG.RU

TDD для Flask и MongoDB

 , , ,


0

1

Продолжаю свой путь в познании Flask и MongoDB. Теперь решил писать тесты, но столкнулся с одной проблемой. Вот код теста (раньше он был сложнее, упростил до минимальной версии с той же ошибкой):

# -*- encoding: utf-8 -*-
import unittest
import neobug


class NeobugTestCase(unittest.TestCase):

    def setUp(self):
        neobug.neobug.config['TESTING'] = True
        neobug.neobug.config['MONGODB_SETTINGS'] = {'DB': 'neobug'}
        self.app = neobug.neobug.test_client()

    def tearDown(self):
        pass

    def test_login_logout(self):
        rv = self.app.get('/', follow_redirects=True)
        print rv.data # выведет 404 Not Found

if __name__ == "__main__":
    unittest.main()


Собственно, что я делаю не так? Надо ли запускать приложение перед запуском тестов? (пробовал, не помогло, но мало ли).



Последнее исправление: kosc (всего исправлений: 1)

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

pylin ★★★★★
()

решил писать тесты

Это не TDD. ТДД это писать тесты до того, как есть что-то работающее.

anonymous
()
Ответ на: комментарий от anonymous

Ну так в дальнейшем и планируется делать.

kosc
() автор топика
Ответ на: комментарий от pylin

Пробовал запускать тест при запущенном приложении - не помогает, результат абсолютно такой же - 404.

kosc
() автор топика
Ответ на: комментарий от kosc

404 означает все работает, но нет нужной страницы. Ты уверен, что у тебя все рауты настроены как надо? Что в браузере выдает, если заходишь на /?

anonymous
()
Ответ на: комментарий от kosc

А что на localhost:80? Что будет если ты отключишь mongodb и зайдешь на localhost:5000? 404?

Вообще, для начала тебе нужно установить открывается ли твое приложение или ты куда-то еще попадаешь. Очевидный способ это добавить логи в view/controller для /, пиши логи в файл.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.