3

特定のシナリオを実行すると、すべて緑色になります。cucumber スイート (rake cucumber) のみを実行すると、すべて緑色になります。ただし、完全なテスト スイート (別名 rake) を実行すると、1 つのシナリオが失敗します。

これは、データベースの状態と構成に関係があると思います。最初は空のデータベースを想定してキュウリのシナリオを作成し、個々のシナリオ用に小さなデータセットを構築しています。

私は切り捨て戦略で DatabaseCleaner を使用しています。私の理解では、これによりデータベースがきれいに消去されます。私は間違っていますか?単体テストと機能テストの実行時に作成された可能性のあるデータの残留はありますか? きゅうりがきれいに始まるようにする簡単な方法はありますか?

コードの投稿と構成の詳細への取り組みを開始できてうれしいです...

ありがとう

4

1 に答える 1

2

手で頭します。深い恥。

実際にデータベースをクリーニングしたことはありません。

私は戦略を立てていましたが、引き金を引くことはありませんでした。

機能/サポート/env.rb

前:

begin
  DatabaseCleaner.strategy = :truncation
rescue NameError
  raise "You need to add database_cleaner to your Gemfile (in the :test group) if you wish to use it."
end

後:

begin
  DatabaseCleaner.strategy = :transaction
  DatabaseCleaner.clean
rescue NameError
  raise "You need to add database_cleaner to your Gemfile (in the :test group) if you wish to use it."
end

それがあなたに起こらないようにしてください。

はぁ。

于 2012-10-18T17:03:14.217 に答える