gpt4 book ai didi

unit-testing - ORM相关对象的单元测试

转载 作者:行者123 更新时间:2023-12-02 03:41:18 25 4
gpt4 key购买 nike

我在一个 Python 项目中工作,我有一些类从另一个类扩展而来,这些类为它们提供了一个“ORM 层”以某种方式调用它。当它们的属性发生变化时,这些对象会持久存在于数据库中。

当我想测试这些对象的逻辑时,大问题就来了,模拟所有东西几乎是不可能的,我快疯了。

是否有任何策略或指令来测试这种情况?谢谢。

最佳答案

通用策略是不测试数据库或其他框架。假设它们有效。

我不知道使用的是哪个持久化/ORM 框架。但这里的一个好策略是 monkey patching : 不是模拟框架,而是覆盖测试中尝试使用空数据库访问数据库的方法:

def nop(*args, **kw): pass

ORFramework.BaseObject.messThingsUp = nop

其中 messThingsUp 是您要删除的 BaseObject 类的方法。

关于unit-testing - ORM相关对象的单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19839908/

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