python - 有没有办法判断函数是否在单元测试中执行?

标签 python unit-testing sqlite

我正在使用一个配置文件来获取我的数据库的信息。它总是获取主机名,然后从该配置文件中找出要使用的数据库选项。我想知道我是否在单元测试中,而是使用内存中的 sqlite 数据库。有没有办法判断我是否在单元测试中,或者我是否必须找到不同的方法?

最佳答案

使用 IoC 将您的数据库依赖项注入(inject)到您的类中。这应该通过在您的类的构造函数中将一个存储库对象传递给它来完成。请注意,您不一定需要 IoC 容器来执行此操作。您只需要一个存储库接口(interface)和存储库的两个实现。

注意:在 Python 中,IoC 的工作方式略有不同。参见 http://code.activestate.com/recipes/413268/获取更多信息。

关于python - 有没有办法判断函数是否在单元测试中执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1601308/

相关文章:

python - PyMC3 多项式模型不适用于非整数观察数据

python - 指定大小的随机子集的 Numpy 列表

python - 计算 "Rock, Paper, Scissors"中的平均值

php - 使用 SQLite 进行配置管理

database - 如何通过不确定的日期范围在 SQLite 数据库中搜索纪元时间戳?

python - 在循环中在 python 中传递多个参数

unit-testing - 使用 Jasmine spy "No provider for Http!"错误的 Angular 2 组件测试

python - 我可以使用 unittest.mock.patch 修补 'random' 吗?

c - 如何在 C 中构建静态功能测试?

python - 将超过一亿行插入 SQLite 数据库的最佳方法是什么?