3

我开始使用带有 Falcon 和 Gunicorn 的 Python 编写一个小型 REST API。我想编写一些集成测试,但不确定如何设置合适的测试环境(例如切换到另一个数据库)。你有什么好的建议或教程吗?

我目前的想法是可能引入一些中间件并提供一个标头。如果设置了标题,我可以切换到我的测试配置。

4

2 回答 2

3

绝对不要仅仅为了集成测试而添加中间件。您应该做的是设置一些配置文件供您的服务器使用。开发、测试和生产是一个不错的设置。每个文件可以指向不同的数据库,并为您的服务器提供不同的端口。我相信您甚至可以在您的个人计算机上同时启动和运行开发和测试服务器,而不会出现任何问题。Python 有一个可以使用的内置配置模块。您可以在 shell 中设置环境变量,以便您的服务器知道要使用哪个配置文件。bash 中的 EGFALCON_ENV='DEV'然后在 python 中可以使用os模块获取环境变量 - os.environ['FALCON_ENV']。希望对您有所帮助,请随时提出更多问题。

于 2017-04-10T18:42:23.843 回答
1

您可能想尝试使用 falcon core 提供的虚拟测试环境和测试助手:

http://falcon.readthedocs.io/en/stable/api/testing.html

于 2017-04-11T12:52:12.013 回答