ruby-on-rails - cucumber :在 Hook 之前对所有场景只运行一次

标签 ruby-on-rails ruby rspec cucumber

我有一个包含多个场景的场景大纲。我希望我的 Before Hook 只运行一次,这样我就可以引导我需要针对所有场景运行的 ActiveRecord 对象。问题是如果我使用

Before do
    # my code here
end

这将在每个场景之前执行。有没有办法为整个大纲运行一次?

最佳答案

我认为如果您只是在 features/support 中的文件中创建对象,它们将被持久化:

ImportantThing.create(:name => "USEFUL THING")

这是因为在每个 Scenario Cucumber 之前都会启动一个数据库事务,然后回滚到它之前的状态,其中应该包含您加载的对象。

关于ruby-on-rails - cucumber :在 Hook 之前对所有场景只运行一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4010987/

相关文章:

ruby-on-rails - Rails - 一张表引用了另外两张表

ruby-on-rails - 浏览器关闭时销毁 session - Ruby on Rails

ruby - 用值交换散列键并将键转换为 Ruby 中的符号?

ruby-on-rails - 如何为 Rails 编写 cucumber (最佳实践)。特征和步骤

ruby-on-rails-3 - 使用 Virtual Box 在 Linux 上运行 Spork for Rails - 端口使用错误

ruby-on-rails - WebMock.disable_net_connect!不使用 rspec(没有 VCR)

mysql - ruby rails : Using Foreign Key twice in the same table?

ruby-on-rails - 无 rspec 期望的 capybara have_field 在升级到 2.2 时失败

ruby - 如何将自定义元数据写入由 RMagick 创建的图像?

ruby-on-rails - Ruby on Rails - 未定义方法 `persisted?' for nil :NilClass