2012-02-09 9 views
0

我々は喜んで、組み込みのタスクレールと非レールテストを組み合わせる戦略は?

rake test 
rake test:units 
rake test:functionals 
rake test:integration 

私たちは成長するにつれ、我々がレールに関連していないRubyコードの束を取得していると私たちのRailsアプリケーションのテスト::ユニットを使用してきましたすべて。ほとんどがlibに入ります。私は、人々がRails環境を読み込んでもロードしなくてもよいlibディレクトリの新しいテストを簡単に追加し、全てのrubyテストをrake:testで実行させたいと思っています。しかし、好ましい方法がどのように広がっているのかは私には分かりませんrake test。新しいディレクトリごとに1つの.rakeファイルが必要ですか? - それは迷惑なようです。

答えて

-1

あなたはおそらくlibコードをテストしているので、それはtest/unit/libになければなりません。あなたがlibコードを別々にテストしたいなら、それをgemに引き出すことができます。

+0

でテストを実行します。しかし、その後のRails環境は必要ありませんこれらのテストのためにロードされます。また、私はテスト/ユニット単なるテストモデルのような気がします。 – lacker

+0

レール環境から完全に切り離されていれば、宝石候補を手に入れたようですね。また、テスト/ユニットは単なるモデルのためのものではなく、ユニットテストのためのものです。ヘルパーテスト。 –

0

Corey Hainesは、talks on fast rails testsです。これはあなたに役立つ可能性があります。

ここにはan example app that demonstrates how you could layout tests that don't require rails(最後のレイアウトを表示するには、ブランチをno_railsに切り替えてください)。

すなわち、libで拡張機能を作成spec_no_railsからそれらをテストし、あなたのモデルからこれらの拡張子を呼び出し、time rspec -fd -I lib/your_extension/ spec_no_rails/

関連する問題