运行 exec 'rake db:drop db:create db:migrate db:seed' in cucumber before each scenario
Run exec 'rake db:drop db:create db:migrate db:seed' in cucumber before each scenario
我搜索并尝试了很多次,但没有找到我的答案。
我的项目有一些用小黄瓜编写的功能文件(在 rails 项目中)。所有步骤都已定义,并且功能本身 运行 如果我每一个都启动它们就非常好。
我可以 运行 所有场景以及我需要执行的黄瓜
在每个场景之前耙 db:drop db:create db:migrate db:seed。
我在 env.rb 的 begin 函数中尝试了 exec 'rake db:drop db:create db:migrate db:seed' 并且在功能的后台步骤中尝试了相同的操作。该命令已执行,但之后黄瓜停止并且不执行场景。我该如何使用它?
感谢您的帮助!
你看过 Database Cleaner gem 了吗?
它可能会帮助您解决这个问题。
一开始不明白 database_cleaner,但现在我明白了.... 播种 "cleaned" 数据库时出现问题。
我现在做的是(在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
我搜索并尝试了很多次,但没有找到我的答案。 我的项目有一些用小黄瓜编写的功能文件(在 rails 项目中)。所有步骤都已定义,并且功能本身 运行 如果我每一个都启动它们就非常好。 我可以 运行 所有场景以及我需要执行的黄瓜 在每个场景之前耙 db:drop db:create db:migrate db:seed。 我在 env.rb 的 begin 函数中尝试了 exec 'rake db:drop db:create db:migrate db:seed' 并且在功能的后台步骤中尝试了相同的操作。该命令已执行,但之后黄瓜停止并且不执行场景。我该如何使用它?
感谢您的帮助!
你看过 Database Cleaner gem 了吗? 它可能会帮助您解决这个问题。
一开始不明白 database_cleaner,但现在我明白了.... 播种 "cleaned" 数据库时出现问题。 我现在做的是(在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