【问题标题】:How to get the real request in unit tests in Pyramid如何在 Pyramid 的单元测试中获取真正的请求
【发布时间】:2014-07-04 04:34:48
【问题描述】:

我正在为我的应用程序使用 Pyramid 框架。我正在编写单元测试(tests.py 文件),我想:

  1. 获取实际请求而不是 dummyRequest 和

  2. 还想获取 config (development.ini) 文件中定义的变量的值。

我也经历过How to get an actual Pyramid request when unit testing 的问题,但没有从中得到太多。

让我知道如何实现上述目标。

【问题讨论】:

  • 只需创建您的 vie 接受的请求。

标签: python unit-testing pyramid


【解决方案1】:

对于您的第一个“想要”,您可以看到这篇写得很好的 SO 帖子: How to get an actual Pyramid request when unit testing

建议使用DummyRequest。 “每当您进行单元测试(与功能测试不同)时要意识到的是,您正在测试一个小‘单元’。这个单元不需要‘真正的’请求,也不需要一个完整的工作系统。”


对于您的第二个“想要”,您可以参考 (1) Pyramid 文档和 (2) SO 帖子:

  1. http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/environment.html#adding-a-custom-setting
  2. how can i get the ini data in pyramid?

本质上,在您的视图函数中,您可以使用request.registry.settingspyramid.threadlocal.get_current_registry().settings,它的行为类似于字典。

【讨论】:

  • +1 谢谢!但我在pyramid.threadlocal.get_current_registry().settings(Returning as None)中没有得到任何东西。请让我知道它是否符合预期或我遗漏了什么。如果是“无”,那么如何访问.ini 文件中定义的值。
  • 您是否指定了要使用的设置文件?您可以查看此 Gist 的第 15 行作为示例:gist.github.com/sontek/1420255#file-gistfile1-py-L15
猜你喜欢
  • 1970-01-01
  • 2012-05-03
  • 2016-03-08
  • 2021-10-03
  • 2019-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多