如何删除unit testing并用rspec替换它?

我有一个rails应用程序,使用默认测试单元进行设置,如何删除它并使用rspec代替? (我没有写任何测试,我只是在应用程序生成期间没有忽略它)。

实际上,您可以同时使用任意数量的测试框架。 例如,你可以使用黄瓜,rspec,测试单元和迷你测试,它们都可以在没有踩到彼此的脚的情况下运行。 要在rails中使用rspec,只需将以下内容添加到Gemfile:

group :development, :test do gem 'rspec-rails' end 

然后更新或安装捆绑包并运行以下命令来设置rspec:

 rails generate rspec:install 

您可以在此处找到更多信息。

对于Rails 3,要真正从应用程序中删除test_unit,您需要在application.rb中删除(或注释掉)test_unit Railtie

 # require "rails/test_unit/railtie" 

正如潘提到的那样,您不必只选择一个测试框架。 但是你问过如何删除test_unit,这就是你真正做到的。

(对这行代码的作用感到好奇吗?查看railties / lib / rails / test_unit / railtie.rb源代码 。)

要在您的应用中安装RSpec,请按照rspec-rails上的说明进行操作 。 如上所述,将rspec-rails添加到Gemfile中的:test和:development组:

 group :test, :development do gem "rspec-rails", "~> 2.0" end 

然后运行bundle install然后rails generate rspec:install