【问题标题】:Storing global configuration data in a pytest/xdist framework在 pytest/xdist 框架中存储全局配置数据
【发布时间】:2018-04-23 21:26:34
【问题描述】:

我正在使用 python + pytest + xdist + selenium 网格构建一个测试框架。该框架需要与预先存在的自定义日志系统对话。作为此日志记录过程的一部分,我需要提交 API 调用:设置每个新的测试运行,在这些测试运行中设置测试用例,并将字符串和屏幕截图记录到这些测试用例。

第一步是设置一个新的测试运行,其 API 调用会返回(除其他外)一个测试运行 ID。我需要保留此 ID 以供所有测试用例读取。我想把它放在某个全局变量中,但是用 xdist 运行我的测试会导致框架失去对值的跟踪。

我试过了:

  • 使用“全局”类;使用 xdist 时忘记了值。
  • 在我的 conftest.py 文件中保存一个全局变量;同样的问题,使用 xdist 时值会被丢弃。此外,到处导入我的 conftest 似乎是错误的。
  • 在 conftest 中加入一个“全局”类;同样的事情。

此时,我正在考虑将其写入临时文件,但这似乎很原始,我认为我忽略了一个更好的解决方案。跨多个 xdist 线程存储和访问全局数据的最正确、pytest 风格的方法是什么?

【问题讨论】:

  • 你可以使用外部数据库

标签: python pytest xdist pytest-xdist pytest-selenium


【解决方案1】:

可能值得研究 Proboscis,因为它允许特定的测试依赖项并且可能是一个可能的解决方案。

【讨论】:

    【解决方案2】:

    你能试试 config.cache -

    request.config.cache.set('run_id', run_id)
    

    refer documention

    【讨论】:

      猜你喜欢
      • 2011-01-08
      • 2019-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多