gpt4 book ai didi

ruby-on-rails - 加载夹具后运行代码

转载 作者:行者123 更新时间:2023-12-02 22:22:26 24 4
gpt4 key购买 nike

我将 Rails 5.1 与 Minitest 和 Searchkick gem 一起使用,在我的系统测试中,我需要在 ElasticSearch 中索引数据以确保测试通过。

如果我添加断点并检查

class ActiveSupport::TestCase
# Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order.
fixtures :all
require 'pry'; binding.pry

# Add more helper methods to be used by all tests here...
end

我所有的模型都有零记录,假设我已经重新创建了数据库:rails db:drop db:create db:migrate

那么我怎样才能让代码 Model.reindex 在 fixture 加载后运行呢?

注意:我可以使用setup,但这样我会在每次测试前对所有需要的模型进行重新索引,从而增加时间。

最佳答案

您可以像这样在设置方法中使用类变量:

class SomeTest
setup do
@@once ||= Model.reindex
end
end

关于ruby-on-rails - 加载夹具后运行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49433209/

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