3

私は最近、Railsアプリケーションで統合テストにRSpecを使用し始めました。これは、複数のテストフレームワークを最新の状態に保つ必要がないようにするためであり、Cucumber機能をRSpecに変換する過程にあります。

1つの統合テストを正常に実行しましたが、例を2回実行したようです。

rspec spec/integration/create_article_spec.rb -f documentation

admin creates article
  successfully creates article

admin creates article
  successfully creates article

Finished in 0.51816 seconds
2 examples, 0 failures

create_article_spec.rbの内容は次のとおりです。

require 'spec_helper'

feature "admin creates article" do
 scenario "successfully creates article" do
  visit admin_articles_url
  click_link "New Article"
  fill_in "Title", with: "Test 1"
  fill_in "Body", with: "Test Article"
  click_button "Save"
  page.should have_content "New Article Published"
 end
end

私はこれが起こっているかもしれない理由を見つけることができません、そしてこれが起こった他のすべての状況は私の場合には当てはまりません。

それは私の統合テストでのみ発生するようであり、他のすべてのテストは影響を受けていないようです。

どこで何かが足りないのかを理解できる以上のRSpecの知識を持っている人を望んでいます。

バージョン

Rails(3.2.2)RSpec(2.8.0)RSpec-rails(2.8.1)

4

2 に答える 2

4

統合テストフォルダー内のすべてのファイルを含むspec_helper.rbファイルに行があることに気付いたので、実際には2回ロードされていました。その行を削除すると、問題が解決しました。

于 2012-06-26T14:57:44.957 に答える
1

以前のバージョンのrspecからアップグレードしましたか?もしそうなら(そしてあなたがそうしなかったとしてもチェックしてください)あなたは余分なlib/tasks/rspec.rakeスクリプトを持っているかもしれません。その場合は、そのファイルを削除して、テストを再実行してください。次に、それらが1回だけ実行されることを確認する必要があります。

于 2012-06-18T11:57:11.113 に答える