我可以切换Rails应用程序的测试框架吗?

Geo*_*Geo 3 ruby testing ruby-on-rails ruby-on-rails-3

当我启动我的Rails应用程序时,我选择RSpec作为我的测试框架,因为所有的炒作.现在,我正在尝试编写更多测试,我发现我不喜欢以这种方式编写测试.我想切换回默认的测试框架.

我该怎么做这个转换?我正在使用Rails 3.0.5

Dav*_*sky 21

不知道你是否知道,但是如果你使用断言而不是rspec-expectations(obj.should matcher),你可以在没有任何额外配置的情况下做到这一点,那么唯一的区别是:

# w/ Test::Unit
class FooControllerTest < ActionController::TestCase
  test "something or other" do
    ...
  end
end

# w/ RSpec
describe FooController do
  it "does something or other" do
     ...
  end
end
Run Code Online (Sandbox Code Playgroud)

您可以使用Rails中的Test :: Unit编写的其他所有内容,您可以使用RSpec完全相同的方式编写.

然后,您将获得RSpec的所有非语法相关优势,如可读输出,具有自己的-help输出的强大命令行工具等.

我意识到这并没有回答你提出的问题,但我希望它能帮助你做出决策.