Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails RubyonRails集成测试数据库清理器防止清理?_Ruby On Rails_Ruby_Minitest_Database Cleaner - Fatal编程技术网

Ruby on rails RubyonRails集成测试数据库清理器防止清理?

Ruby on rails RubyonRails集成测试数据库清理器防止清理?,ruby-on-rails,ruby,minitest,database-cleaner,Ruby On Rails,Ruby,Minitest,Database Cleaner,我想加载数据库的一部分。当我运行集成测试时。但是对于控制器和模型测试,我想跳过它,在每次测试之间进行清理。所以问题是,它目前在集成测试中清理数据库,但我想防止这种情况发生。我该怎么做 如果在before/after钩子中有DatabaseCleaner,则只能对非功能规格执行此操作,如下所示: config.before(:each) do |example| DatabaseCleaner.start unless example.metadata[:js] end config.a

我想加载数据库的一部分。当我运行集成测试时。但是对于控制器和模型测试,我想跳过它,在每次测试之间进行清理。所以问题是,它目前在集成测试中清理数据库,但我想防止这种情况发生。我该怎么做

如果在before/after钩子中有DatabaseCleaner,则只能对非功能规格执行此操作,如下所示:

config.before(:each) do |example|
    DatabaseCleaner.start unless example.metadata[:js]
end

config.after(:each) do |example| do
    DatabaseCleaner.clean unless example.metadata[:js]
end
如果您以随机顺序运行整个套件,这可能会导致奇怪的行为