在所有水豚测试之前运行块一次

时间:2015-06-19 19:48:22

标签: ruby-on-rails ruby rspec capybara

我正在使用Capybara和Rspec进行集成测试rails应用程序。有没有办法在第一个Capybara测试运行之前运行一次前块,而不是在每个功能规范之前运行它?将块放在我的RSpec.configure块中会导致它在每个功能规范之前运行:

let horizontalConstraintnext = NSLayoutConstraint(item: next, attribute: NSLayoutAttribute.Leading, relatedBy: NSLayoutRelation.Equal, toItem: view, attribute: NSLayoutAttribute.Leading, multiplier: 1, constant: 285)
view.addConstraint(horizontalConstraintnext)

2 个答案:

答案 0 :(得分:1)

RSpec.configure do |config|
    config.before(:suite) do
      # do some stuff
    end
end

答案 1 :(得分:0)

我认为你正在完成任务。由于您要运行一次,只需运行它:

cb = lambda { puts 'I am run once' }
RSpec.configure do |config|
  cb.call
end