Ausführen eines bestimmten Testfalls in Django, wenn Ihre App über ein Testverzeichnis verfügt

| |

Die Django-Dokumentation (http://docs.djangoproject.com /en/1.3/topics/testing/#running-tests) sagt, dass Sie einzelne Testfälle ausführen können, indem Sie sie angeben:

$ ./manage.py test animals.AnimalTestCase 

Dies setzt voraus, dass Sie Ihre Tests in einer Datei tests.py in Ihrer Django-Anwendung haben. Wenn dies wahr ist, dann funktioniert dieser Befehl wie erwartet.

Ich habe meine Tests für eine Django-Anwendung in einem Tests-Verzeichnis:

my_project/apps/my_app/ ‚îú ‚îÄ‚îÄ __init__.py ‚îú‚îÄ‚îÄ tests ‚îÇ ‚îú‚îÄ‚îÄ __init__.py ‚îÇ ‚îú‚îÄ‚îÄ field_tests.py ‚îÇ ‚îú‚îÄ‚îÄ storage_tests.py ‚îú‚ îÄ‚îÄ urls.py ‚îú‚îÄ‚îÄ utils.py ‚îî‚îÄ‚îÄ views.py 

Die Datei tests/__init__.py hat eine suite()-Funktion:

import unittest from my_project.apps.my_app.tests import field_tests, storage_tests def suite(): tests_loader = unittest.TestLoader().loadTestsFromModule test_suites = [] test_suites. append(tests_loader(field_tests)) test_suites.append(tests_loader(storage_tests)) return unittest.TestSuite(test_suites) 

Um die Tests auszuführen, mache ich:

$ ./manage.py test my_app 

Der Versuch, einen einzelnen Testfall anzugeben, löst eine Ausnahme aus:

$ ./manage.py test my_app. tests.storage_tests.StorageTestCase ... ValueError: T Das est-Label "my_app.tests.storage_tests.StorageTestCase" sollte die Form app.TestCase oder app.TestCase.test_method haben 

Ich habe versucht, das zu tun, was in der Ausnahmemeldung stand:

$ ./manage.py test my_app.StorageTestCase ... ValueError: Testlabel "my_app.StorageTestCase" verweist nicht auf einen Test 

Wie lege ich einen fest individuellen Testfall, wenn meine Tests in mehreren Dateien vorliegen?