ruby Test :: Unitフレームワークで単一のshouldaコンテキストテストを実行する方法

StackOverflow https://stackoverflow.com/questions/1642034

質問

通常、メソッド" delete_user_test"の次のコマンドライン構文を使用して、通常のTest :: Unitメソッドをテストできます。

ruby functional/user_controller_test.rb -n delete_user_test

今、Test :: Unitでshouldaプラグインを使用しているとき、次のテクニックと同じテクニックを使用しようとしています:

... 
context "Deleting a User" do
  should "remove user from user table" do
    ...
  end
end

次に、次のように単一のテストを実行しようとします。

ruby functional/user_controller_test.rb -n "test: Deleting a User should remove user from user table"

これは機能しません。 shouldaとTest :: Unitを使用して単一のコンテキストテストを実行する方法を知っている人はいますか。 1つのテストファイルにいくつかの異なるテストがあり、すべてのテストが実行されるのを待たずにTDDを使用して実行するだけです。

役に立ちましたか?

解決

これは私のために働く:

ruby functional/user_controller_test.rb -n "/Deleting a User/"

コンテキスト名からかなり長い文字列を正規表現に入れるだけです。

他のヒント

最後にスペースを入れてテストのフルネームを使用することもうまくいくようです:

ruby -Itest 
     functional/user_controller_test.rb 
     -n "test: Deleting a user should remove user from user table. "

2つのアプローチを組み合わせると、うまくいきました。 -I test と正規表現の両方を使用します。

ruby -Itest functional/user_controller_teset.rb -n "/remove user from user table/"
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top