Ich habe django-nose 1.0 als test runner für ein Django 1.3.1 project installiert. Ich befolge die Anweisungen on the pypi page in Bezug auf Test-Only-Modelle.Django-nose erstellt keine test-only-modelle während testläufen
Hier ist meine settings.py testrunner config:
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
I-Tests für mehrere Monate mit dieser testrunner ohne Problem ausgeführt haben. Jetzt versuche ich eine abstrakte Klasse zu testen, und ich benutze ein Nur-Test-Modell, aber der spezifische Test, den ich geschrieben habe, gibt einen Fehler aus.
Gemäß der Dokumentation muss ich nur die Testklasse in eine der Dateien aufnehmen, die während des Tests importiert wird. Ich habe die Tests in einem "Test" -Ordner und in mehrere kleinere Testdateien aufgeteilt. Hier ist meine Tests/model_tests.py (Modelle und App absichtlich aus beruflichen Gründen umbenannt):
from django.tests import TestCase
from myapp.models import AbstractFoo
class Foo(AbstractFoo):
pass
class TestFoo(TestCase):
def setUp(self):
self.foo = Foo.objects.create(name="Tester",
description="This is a test", ...)
... [tests follow]
ich einen Fehler in der ersten Zeile des setUp Empfang:
DatabaseError: relation "tests_foo" does not exist
LINE 1: INSERT INTO "tests_foo" ("name", "description", "display...
Und wenn ich setzen Ein Breakpoint in den Test und inspizieren die Datenbank, die Tabelle 'Tests_foo' (oder eine Tabelle mit 'foo' im Namen) existiert nicht.
Irgendwelche Ideen, warum das Test-Only-Modell nicht geladen wird?
ich den gleichen Fehler jetzt mit 1,5. Wie hast du das gelöst, bitte? –