Django не запускает тесты с помощью manage.py test, если не указано приложение и конкретный метод тестирования

У меня есть приложение Django myApp. В нем есть файл tests.py, который определяет ряд тестовых случаев с использованием класса django.test.TestCase. Например, один из них называется WebViews и имеет тестовый метод check_status_codes.

Когда я запускаю тест ./manage.py, база данных создается с моими исходными данными, но затем мне сообщается, что было выполнено 0 тестов. Я получаю аналогичные результаты (тесты не выполняются), если сделаю следующее:

./manage.py test myApp

или даже это:

./manage.py тест myApp.WebViews

Однако, если я выполню

./manage.py test.WebViews.check_status_codes

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

Я могу соединить вместе несколько тестовых методов и заставить их работать, но это становится очень утомительно, и у меня такое чувство, что я чего-то упускаю.

Любые намеки или предложения относительно того, что делать?

Спасибо!


person lunafiko    schedule 10.12.2010    source источник


Ответы (1)


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

class FooTest(TestCase):

    def setUp(self):
        # do setup stuff here
        pass

    def tearDown(self):
        # do teardown here
        pass

    def test_one_equals_one(self):
        self.assertEqual(1, 1, "One did not equal 1")
person ashchristopher    schedule 10.12.2010
comment
Большое спасибо, это сработало! Я не думал об этом. - person lunafiko; 11.12.2010