是否可以在TestCase
中加载夹具之前call_command()
?
此代码不起作用 - 无法加载夹具,因为组尚不存在。
class UserAPITestCase(APITestCase):
fixtures = [
'user/fixtures/user.json',
]
def _fixture_setup(self):
call_command('create_groups')
super()._fixture_setup()
看起来夹具被加载到 setUpClass of TestCase 中,因此您可以在我们的测试类中覆盖它。
def setUpClass(cls):
call_command('create_groups')
super().setUpClass()
在进一步了解该方法后,这可能不适用于事务,因为您将在将内容包装到事务中之前加载数据库数据。如果你不改变这些组,我认为一切都会好起来的。抱歉,我没有设置自己的测试用例来确认。
如果这是一个问题,则将该命令创建的组转储到灯具的另一个选项:)