【问题标题】:RSpec collection without running tests没有运行测试的 RSpec 集合
【发布时间】:2020-11-16 18:43:08
【问题描述】:

有没有办法触发 RSpec 测试用例收集,但不运行测试?

在 Python 的 pytest 中,相当于附加了一个 --collect-only 开关。

我的用例:我想运行一个钩子来验证有关我们的测试用例的一些元数据,例如强制执行标记模式,并且我想将此验证检查作为公关检查。问题是,我真的不希望测试套件运行,但我只想验证测试用例元数据。

任何帮助将不胜感激,并在此先感谢您!

【问题讨论】:

  • 我无法找到任何具体的东西。 Here 是 rspec 元数据的文档,如果有帮助的话

标签: rspec rspec-rails rspec3


【解决方案1】:

似乎没有内置的方式只做收集。相反,我必须在我的spec_helper 中添加以下内容。基本上,如果您将环境变量 CONTEXT=validate 传递到您的测试运行中,则跳过测试。这不是一个很好的方法,但似乎 RSpec 没有提供内置的替代方案:

  config.around(:each) do |example|
    # validate test case metadata. Ensure proper folder structure and team tagging
    # No need to run tests during validation, so they are skipped and left in 'pending' state
    if CONTEXT == 'validate'
      puts '[INFO] Skipping spec run and validating spec'
      example.skip
      validate_spec(example)
    else
      example.run
    end

【讨论】:

    猜你喜欢
    • 2010-11-01
    • 2012-04-30
    • 1970-01-01
    • 2012-11-28
    • 2023-01-09
    • 1970-01-01
    • 2015-05-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多