繁体   English   中英

如何等待ES索引在Rspec和Capybara完成?

[英]How to wait for ES indexing to finish in Rspec and Capybara?

如何避免在该示例中使用sleep 1等待ES索引完成?

describe Question do
  before do
    create :question, content: "Some test question",
                      app: @app
    create :question, content: "Some other question",
                      app: @app
    sleep 1
  end

  it_behaves_like "search results found" do
    let(:query) { "Some" }
    let(:results) { ["Some test question", "Some other question"] }
  end
end

调用'refresh'API端点。 如果您正在使用Tire和ActiveModel集成功能,那么它将是:

Question.tire.index.refresh

或者,您可以使用curl直接命中端点。

您可以在索引上调用refresh ,这将导致它重建:

Question.index.refresh

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM