覆盖Rails测试测试:: Unit :: TestCase

时间:2011-08-05 20:30:20

标签: ruby-on-rails ruby unit-testing testunit

我试图覆盖/修改Test :: Unit :: TestCase测试的拆解功能。 在测试的拆解期间(完成之后),我想做一些额外的事情。

我试过这个,但它不起作用(继续执行原来的拆解):

module Test
  module Unit
    class TestCase
        def teardown_modified
          # do modifications
          teardown_original
        end

        alias teardown_original teardown
        alias teardown teardown_modified
      end
  end
end

2 个答案:

答案 0 :(得分:1)

您是想在一个测试用例中还是在一个测试用例中?

如果您需要更改所有测试用例:

答案 1 :(得分:1)

您可能会发现使用alias_method_chain会产生更好的结果:

class Test::Unit::TestCase
  def teardown_with_hacks
    teardown_without_hacks
  end
  alias_method_chain :teardown, :hacks
end

这会自动为你设置很多东西。