Django装置创建,忽略对象之间的关系

Django装置创建,忽略对象之间的关系,django,testing,python-3.6,Django,Testing,Python 3.6,我正在django应用程序中测试视图。在模型(用户、部门、报告等)之间有很多一对一和很多的关系。在创建我根本不用的夹具时,填充某些字段(如姓名、姓氏、出生日期等)需要花费很多时间。我怎么能忽视他们?另外,创建夹具时的最佳实践是什么?我的书是这样的 class TestReportModel(TestCase): allow_database_queries = True @classmethod def setUpTestData(cls): cls.report_id = 99

我正在django应用程序中测试视图。在模型(用户、部门、报告等)之间有很多一对一和很多的关系。在创建我根本不用的夹具时,填充某些字段(如姓名、姓氏、出生日期等)需要花费很多时间。我怎么能忽视他们?另外,创建夹具时的最佳实践是什么?我的书是这样的

class TestReportModel(TestCase):
allow_database_queries = True

@classmethod
def setUpTestData(cls):
    cls.report_id = 99
    cls.factory = RequestFactory()

    cls.user_with_access = User.objects.create(username="user1", password="password")
    cls.employee = Employee.objects.create(user=cls.user_with_access, fio="name1 surname1",
                                           date_of_birth="2012-12-12")
    cls.indicator = Indicator.objects.create(context_id=10, set_id=10)
    cls.ife = IndicatorsForEmployees.objects.create(employee=cls.employee, indicator=cls.indicator)
    cls.report = Report.objects.create(owner=cls.ife)
    cls.report.id = cls.report_id
    cls.report.save()

    cls.user_with_no_access = User.objects.create(username="user_with_no_access", password="password")
    cls.employee_with_no_access = Employee.objects.create(user=cls.user_with_no_access, fio="name2 surname2",
                                                          date_of_birth="2018-12-12")

听起来您需要在设置文件中指定一个测试数据库,用syncdb加载一个fixture,然后使用keepdb标志

在设置文件中,可以在数据库中指定测试数据库名称。

如果未找到此数据库,则将在运行测试时创建它。创建设备后,可以使用syncdb加载该db。

然后,当您运行单元测试时,使用它通过
--keepdb
,数据库将在测试之间保持不变。

是否有任何方法可以以某种方式在设置中写入,这样我就不会每次都写入它?@Ааааааааааааааааа107。