开发者

Using Module to group tests in Test::Unit

When I have many tests in one test class, I use Module to group the 开发者_开发百科tests.

Since I'm very new to rails and my question is:

Is it correct way to group tests or I'm doing very stupid things without knowing other side-effects?

Here is the code:

require 'test_helper'

module AttributeValidationTest
  extend ActiveSupport::Testing::Declarative

  test "should not ...." do
    # .....
  end

  # other tests here....
end

module AnotherGroupTest
  extend ActiveSupport::Testing::Declarative

  # tests.....
end

# may be another modules..   

class MyModelTest < ActiveSupport::TestCase
  include AttributeValidationTest  
  include AnotherGroupTest

end

Thanks.


The question is: what do you gain by grouping the tests in modules?

I, in my humble tradition, just group similar tests by placing them not far from each other, and by giving them the same name prefix, like:

def test_user_name_handles_strange_chars
def test_user_name_handles_empty_string
def test_user_name_...

(you can without problems use the new syntax, as test "name should handle strange....")

This helps me to test only parts of the functionality (as my full test suite takes about an hour):

cd test && ruby unit/user_test.rb -n /test_user_name_/
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜