我创建了一个带有 -T 选项的新 Rails 3.2.x 应用程序,因为我想使用 Rspec 进行测试。
现在我想将其恢复为 Test::Unit。我怎样才能做到这一点,以便所有 rake 任务都能正常工作,并使用 Test::Unit 而不是 RSpec 测试外壳生成新的脚手架?
我创建了一个带有 -T 选项的新 Rails 3.2.x 应用程序,因为我想使用 Rspec 进行测试。
现在我想将其恢复为 Test::Unit。我怎样才能做到这一点,以便所有 rake 任务都能正常工作,并使用 Test::Unit 而不是 RSpec 测试外壳生成新的脚手架?
在搜索和破解之后,这就是它为我工作的原因。
创建一个文件 test/test_helper.rb 并将以下代码放入其中:
ENV["RAILS_ENV"] = "test"
require File.expand_path('../../config/environment', __FILE__)
require 'active_support'
require 'rails/test_help'
# require 'factory_girl_rails' #use if you are using FactoryGirl for fixtures
class ActiveSupport::TestCase
# Setup all fixtures in test/fixtures/*.(yml|csv) for all tests in alphabetical order.
#
# Note: You'll currently still have to declare fixtures explicitly in integration tests
# -- they do not yet inherit this setting
fixtures :all
# Add more helper methods to be used by all tests here...
end
之后,您可以使用生成测试
rails g integration_test SomeStories
或者您可以在 test/unit 下添加单元测试,然后使用
rake test
rake test:recent