0

私は次の構造を持っています

tests
  specific tests
    first_test.rb
  more tests
    second_test.rb
 test_helper.rb

今、first_test と second_test の両方で test_helper を要求しようとしています。以下の作品

「../test_helper.rb」が必要です

コマンドラインから、特定のテストを実行して実行する必要があります

ruby first_test.rb

どうすれば柔軟性を高めることができますか。私は任意のディレクトリにいて、これらのテストを実行したいと考えています。現在、「そのようなファイルはありません」というメッセージが表示されます。これは Rails アプリではありませんが、Rails では単に require 'test_helper.rb' を実行できます。

レーキでこれを機能させるためのボーナスポイント。

4

1 に答える 1

1

test_helper と他のヘルパーを次のような別のディレクトリに配置します

/home/XXX/projects/test_project/lib/ 

または好きな場所で、次のようなベースディレクトリを使用します

Dir["base/path/to/your/helper/*.rb"].each {|file| require file }

または上記の例から

Dir["/home/XXX/projects/test_project/lib/*.rb"].each {|file| require file }

それでおしまい。この行を、任意のディレクトリとは別に実行するすべてのテストの先頭に追加します。ディレクトリの問題は忘れてください。

于 2013-04-22T18:03:16.183 に答える