【发布时间】:2017-05-20 09:20:42
【问题描述】:
我正在使用 Pytest 进行单元测试,我的一些测试需要使用例如数据库连接信息因环境而异(开发、暂存和生产)。
这是在正常执行期间从应用程序配置文件中读取的内容。在一个理想的世界中,我只是为 Pytest 提供一个命令行选项,指定例如我的development.ini 应用程序配置文件,我的测试代码可以将该配置信息提供给正在测试的应用程序代码,而无需我在测试配置文件中复制该信息。这可能吗?
Pytest 文档中让我印象深刻的两种可能性是:
- 把它放在
pytest.ini中作为addopts - 通过custom command-line options传递它
(如果我正确理解文档,上述两种方法都应该使用自定义测试夹具。如果有错误,请纠正我。)
提供特定于环境的配置信息供我的测试代码使用的传统方法是什么?或者,不同方法的优缺点是什么?
【问题讨论】:
标签: python unit-testing configuration pytest