How to run a single shoulda context test in ruby Test::Unit framework
I can typically test a regular Test::Unit method using the following commandline syntax for a method "delete_user_test":
ruby functional/user_controller_test.rb -n delete_user_test
Now when I'm using the shoulda plugin with Test::Unit I try to use the same technique as follows:
...
context "Deleting a User" do
should "remove user from user table" do
...
end
end
Then I try to run the single test as follows:
ruby functional/user_controller_test.rb -n "test: Deleting a User should remove user from user table"
开发者_StackOverflow
This doesn't work. Does anyone know how I can run a single context tests using shoulda and Test::Unit. I have a couple of different test in one test file and I want to only run the one using TDD without having to wait for all tests to run.
This works for me:
ruby functional/user_controller_test.rb -n "/Deleting a User/"
Just put some reasonably long string from your context name into the regular expression.
Using the full name of the test with a space at the end seems to work too:
ruby -Itest
functional/user_controller_test.rb
-n "test: Deleting a user should remove user from user table. "
Combining the two approaches has worked well for me; using both -I test
and the regexp.
ruby -Itest functional/user_controller_teset.rb -n "/remove user from user table/"
精彩评论