免责声明*我不是在问如何将模拟注入到单元测试中 与
unittest.mock
。这是关于如何模拟pyodbc
。
我需要模拟一些pyodbc
对象,以便测试Python应用程序的各种功能,但是我发现它异常难做。传统上,执行此操作的方法只是从要模拟的对象继承,然后使用要测试的静态值覆盖所有麻烦的方法或属性。
但是,当我尝试从pyodbc.Connection
或pyodbc.Row
继承时,出现错误:
TypeError:类型'pyodbc.Connection'不是可接受的基本类型
我可以自己获取类对象并传递它们,但是由于多种原因,这不是一个好主意,测试的功能也不能很好地代表部署上下文。
有人知道如何在Python中执行此操作吗?