gpt4 book ai didi

django - 在多个数据库上的django单元测试

转载 作者:行者123 更新时间:2023-12-04 17:40:53 25 4
gpt4 key购买 nike

我正在一个django项目中,我所有的单元测试用例都运行良好。

当我引入第二个数据库后,我从TestCase继承的所有测试用例都被破坏了。在这个阶段,我还没有为第二个数据库建立任何测试用例,但是我的路由器工作正常。

当我运行测试时,我得到了错误,

“KeyError:'SUPPORTS_TRANSACTIONS'”

在我看来,这是在尝试检查所有我设置的数据库都支持事务,但从未创建第二个数据库。

关于如何使用测试脚本来构建第二个数据库的任何想法。

最佳答案

我意识到这是一个很旧的线程,但是我遇到了同样的问题,我的决心是将multi_db = True标志添加到我的测试用例中,例如:

class TestThingWithMultipleDatabases(TestCase):
multi_db = True

def test_thing(self):
pass

来源 https://github.com/django/django/blob/master/django/test/testcases.py#L861

这导致django在所有数据库上调用 flush(如果支持事务,则回滚)

我也正在使用数据库路由器

恐怕我在Django的文档中找不到此内容,因此没有链接

关于django - 在多个数据库上的django单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4161223/

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