Методы setUpTestData и setUp TestCase в Django
Может ли кто-нибудь объяснить мне разницу между методами setUpTestData и setUp TestCase в Django?
В документации сказано
* Описанный выше атомарный блок на уровне класса позволяет создавать начальные данные на уровне класса, один раз для всего тест-кейса. Эта техника позволяет ускорить тестирование по сравнению с использованием setUp().
Будьте осторожны и не модифицируйте объекты, созданные в setUpTestData(), в своих тестовых методах. Модификации в объектах в памяти от работы по настройке, выполненной на уровне класса, будут сохраняться между методами тестирования. Если вам необходимо модифицировать их, вы можете перезагрузить их в методе setUp() с помощью refresh_from_db() *
И часть кода...
from django.test import TestCase
class MyTests(TestCase):
@classmethod
def setUpTestData(cls):
# Set up data for the whole TestCase
cls.foo = Foo.objects.create(bar="Test")
def test1(self):
# Some test