4

Rails サイトの RSpec を使用していくつかのテストを実行しましたが、指示に従っているにもかかわらず、うまく動作しません。

Factory 経由で記事を作成し、Sunspot.commit を実行して結果を確認します。私はいつも空白を描いているようです。コンソールまたは Web サイトを介して手動でテストすると、すべてが機能します。

何か案は?黒点ログを出力して何が起こっているかを確認するにはどうすればよいですか?

私のGemfileには次のものがあり、Rails 3.1.1を実行しています

gem 'sunspot', '1.2.1'
gem 'sunspot_rails'
gem 'sunspot_test'

どうもありがとう、グレアム

4

2 に答える 2

9

説明書をちゃんと読まなかった自分の責任です。

https://github.com/collectiveidea/sunspot_test/issues/9

Solr が確実に起動するように、説明にマジック ビットを追加する必要があります。

describe "my nice test", :search => true do
  thing = Factory.create(:thing)
  Sunspot.commit
  # do my search and test
  # now it works!
end

重要なのは:search => trueです。

于 2011-11-08T16:04:17.627 に答える
0

上記の応答に少し追加するだけです。FactoryGirl を使用している場合:

FactoryGirl.define do
    after(:create) { Sunspot.commit } 
...
end

その後、各テストファイルにコミット呼び出しを追加する必要はありません...

于 2017-03-24T14:57:01.657 に答える