Для правильной изоляции теста, когда тесты касаются базы данных, вам нужно наследовать от django.test.TestCase, который обрабатывает изоляцию состояния базы данных между одним выполнением теста и другим.
Никогда, никогда не зависите от порядка выполнения теста: если вам нужно, вы делаете это неправильно, потому что нарушаете изоляцию теста.
Помните, что вам не нужно использовать только unittest.TestCase или только django.test.TestCase: вы можете смешивать их по мере необходимости (вам не нужно последнее, если ваш тест не касается базы данных).
Обратите внимание, что django.test.TestCase использует транзакции для ускорения очистки состояния базы данных после каждого теста, поэтому, если вам нужно действительно протестировать транзакцию базы данных, вам нужно использовать django.test.TransactionTestCase (см. https://docs.djangoproject.com/en/dev/topics/testing/#testcase)