gpt4 book ai didi

ruby-on-rails - 在每个场景之前在 cucumber 中运行 exec 'rake db:drop db:create db:migrate db:seed'

转载 作者:太空宇宙 更新时间:2023-11-03 16:20:40 32 4
gpt4 key购买 nike

我搜索并尝试了很多次,但没有找到我的答案。我有一些用小 cucumber (在 Rails 项目中)编写的项目的功能文件。所有步骤都已定义,如果我单独启动它们,功能本身运行得很好。我可以将所有场景与我需要执行的 cucumber 一起运行在每个场景之前 rake db:drop db:create db:migrate db:seed。我在 env.rb 的开始函数中尝试了 exec 'rake db:drop db:create db:migrate db:seed' 并且我在功能的后台步骤中尝试了相同的操作。该命令已执行,但之后 cucumber 停止并且不执行场景。我该如何使用它?

感谢您的帮助!

最佳答案

起初不理解 database_cleaner,但现在我明白了……为“已清理”的数据库设置种子时出现问题。我现在所做的是(在 env.rb 中)

begin
require 'database_cleaner'
require 'database_cleaner/cucumber'
DatabaseCleaner.strategy = :truncation
rescue NameError
raise "You need to add database_cleaner to your Gemfile (in the :test group) if you wish to use it."
end
Before do |scenario|
load Rails.root.join('db/seeds.rb')
end
Around do |scenario, block|
DatabaseCleaner.cleaning(&block)
end

关于ruby-on-rails - 在每个场景之前在 cucumber 中运行 exec 'rake db:drop db:create db:migrate db:seed',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34028146/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com