0

ユニットテストのコードでこの種のコードを使用しています。

test "should be awesome" do
  assert true
end

フィクスチャの代わりにFactoryGirlを使用しています。

何度も繰り返しているので、ヘルパー関数があると非常に便利です。単体テストでヘルパー関数を作成して呼び出すための最良の方法は何ですか?コントローラーのように利用できるものはありbefore_filterますか(入れてみましたが、未定義の方法です)。どんな助けでも大歓迎です!

4

1 に答える 1

5

ユニットテストにユーティリティ関数を問題なく追加できます。「test_something」のように名前を付けない限り、単体テストとして実行されることはありません。次に、実際の単体テストメソッドからそれらを呼び出すことができます(使用する形式は、とにかくクラスにメソッドを持つことになります)。

それで:

test "should be awesome" do
  assert_general_awesomeness
  assert true
end

private

def assert_general_awesomeness
  assert true
end

あらゆる場所で使用されるユーティリティメソッドはtest_helperに入れることができ、すべてのテストで使用できるようになります。あるいは、一般的なユーティリティメソッドを提供するためにテストにミックスインするモジュールを用意することもできます。

単体テストの前にセットアップするための一般的な呼び出しを行う場合はsetup、クラス内の各テストの前に呼び出されるメソッドを挿入できます。

于 2010-08-04T13:51:48.927 に答える