Django не запускает тесты с параметром manage.py, если не указано приложение и определенный метод тестирования - PullRequest
7 голосов
/ 11 декабря 2010

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

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

. / Manage.py test myApp

или даже это:

. / Manage.py test myApp.WebViews

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

. / Manage.py test.WebViews.check_status_codes

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

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

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

Спасибо!

1 Ответ

9 голосов
/ 11 декабря 2010

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

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")
...