Rspec(运行 设置标志时)

Rspec (run when flag is set)

如何仅在设置标志时 运行 进行 rspec 测试?

我正在使用 Stripe-Ruby-Mock,他们使用 live 标志。但是,当未设置 -t live 时,我不希望测试为 运行。

bundle exec rspec -t live spec

it "should run rspec test, only when live is true", live: true do
  expect('value').to eq('value')
end

目前,我的测试 运行s 何时设置 -t live 以及何时未设置。

您可以设置一个环境变量:

LIVE=true bundle exec rspec spec

然后在您的代码中您可以将 ENV['LIVE'] 用作 if(conditional filter)。 详情请查看 conditional filters

配置 RSpec 以在您的 spec_helper.rb 中使用 #filter_run_excluding:

默认过滤掉该标签
config.filter_run_excluding live: true

这样他们只会 运行 当你在命令行上指定标签时。