gpt4 book ai didi

django - 如何将测试 fixture 与其他框架一起使用然后进行单元测试

转载 作者:行者123 更新时间:2023-11-28 20:58:10 25 4
gpt4 key购买 nike

我正在使用 lettuce 框架进行测试,我想使用加载了一些测试装置的新数据库运行测试。类似于单元测试运行,当定义测试 fixture 时

这可能吗?

最佳答案

这是一个代码片段,用于加载主要取自 Django 测试用例的装置。您只需要确保“db”指向正确的数据库(测试数据库)。我通过传递一个自定义设置文件来做到这一点。这里的“db”只是一个别名,而不是一个实际的连接。如果您只使用一个数据库(不包括测试数据库),您只需将其设置为“默认”。因此,如果您测试的类属性为“fixtures”,它将使用与 loaddata 管理命令相同的规则加载 fixture。

    if getattr(self, 'multi_db', False):
databases = connections
else:
databases = [DEFAULT_DB_ALIAS]

for db in databases:

if hasattr(self, 'fixtures'):
# We have to use this slightly awkward syntax due to the fact
# that we're using *args and **kwargs together.
call_command('loaddata', *self.fixtures,
**{'verbosity': 0, 'database': db})

你需要

import from django.core.management import call_command

使这项工作成功。

关于django - 如何将测试 fixture 与其他框架一起使用然后进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4681637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com