Closed kxxoling closed 8 years ago
It's hard to tell without any further context. I sometimes get this error message for the first query of all following tests if one previous test fails. So this might not be a problem with django-autofixture, but surfacing there since autofixture might be the first library that executes a query in your test.
Can you try to run the tests just with one single test case and see if the traceback is more meaningful?
@gregmuellegger I go this error several times, usually there's no error with my tests. I run tests with django-nose, related configs are:
# django-nose
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
NOSE_ARGS = ['--with-spec', '--spec-color']
In my base test class, I defined some serUpClass
code and tearDownClass
code which might matter:
class BaseTestCase(TestCase):
@classmethod
def setUpClass(cls):
super(BaseTestCase, cls).setUpClass()
for model in cls.models:
AutoFixture(model).create(10)
@classmethod
def tearDownClass(cls):
for model in cls.models:
model.objects.all().delete()
super(ManagerCase, cls).tearDownClass()
BTW, I'm using django 1.8.11 and django_nose 1.4.3 and autofixture 0.12.0.
Can you reproduce the same error if you run only one testcase?
@gregmuellegger Sorry I cannot, it frequently that time, but be rarely later. And I haven't seen for a long time now. When I comes, I just need to rerun the tests again or twice, it would disappear.
But I almost not change my tests, only add a few new tests sometime.
Hm, randomly failing tests are a strange thing. Let's see if it comes back :) all thumbs pressed.
Yeah, and hard to debug. Maybe there's some race or database destroying issue, i guess.
I used this in tests, there's almost 50 unit tests now. But when running test with nosetests command, sometimes I got
TransactionManagementError
. Full traceback is listed below: