2011-07-13 6 views
0

私のテストenvはdevで起こらないことをしています。だから、私がdev envでテストを実行できるとすれば、テストで何か問題があった場合(まだ失敗した場合)、テスト環境が壊れた場合(失敗しなかった場合)Ruby on Rails2.3.8:dev環境を使ってテストを実行するには?

現在、私はあなたが個々のテストを実行している場合

ruby /path/to/test_controller_test.rb 
+0

特に、開発環境では発生していないテスト環境では何が起こっていますか?おそらく、開発環境に対してテストを実行すべきではありません。とにかくテスト環境にハードコードされていることは確かです。実際の問題を説明すると、違いがある理由を特定し、今後起こることを避けるためにいくつかの変更を加えることができます。 – d11wtq

+0

私はdestroyメソッドをテストしようとしています。これは2つのコントローラ間で全く同じです。しかし、テスト環境では、1つのコントローラの破壊が機能し、他のコントローラの破壊は機能しません。作品では、ユーザーが削除権限を持っている場合は削除され、そうでない場合はエラーが表示されます。テスト環境では、常に削除されます。 – NullVoxPopuli

+0

私はw/d11wtqに同意します。私はあなたのテストを(テスト環境で)あなたのテストに入れ、それを見つけ出すでしょう。私はテストが私を混乱させるときに 'puts'ステートメントをたくさん使うのが好きです。 – pcg79

答えて

1

を行うことによって、単一の機能テストを実行している、あなたのdevelopmentデータベースのスナップショットを取り、testデータベースにそれをロードするからあなたを停止するためには何もありません。 rake testを実行した場合、それは消去されるので、そのことを念頭に置いてください。

存在しないレコードに依存するテスト、通常は危険な前提の結果、または特定のことが正しく構築されていないと正しく動作しないテストがあるかもしれません。 config/environmentsの設定がテスト自体に直接影響を与えることはまれです。

関連する問題