我具有以下功能:
def build_dict():
app_config = {}
for keypair in models.Applify.objects.all():
app_config.update({keypair.key: keypair.value})
return app_config
我想做的是有一个测试文件,在其中我伪造Applify查询集。到目前为止,我没有用的是这样的:
test_mock_list = [
mock.Mock(id=1, key='something_1', value=False),
mock.Mock(id=2, key='something_2', value=False)
]
with mock.patch('models.Applify.objects.all', return_value=test_mock_list):
# perform assertion test.
我得到的是一个错误的说法。
Failed: Database access not allowed, use the "django_db" mark, or the "db" or "transactional_db" fixtures to enable it.
我并没有尝试实际连接到数据库,所以我不想使用@pytest.mark.django_db
装饰器。那么如何才能成功伪造查询集呢?