我已经安装了test-unit
和rspec
(以及-core
、-expectations
、-mocks
和-rails
版本2.6.x)。当我运行命令rails new foo
时,它使用test-unit
而不是rspec
生成测试存根文件。
有没有办法让rails使用rspec来生成测试呢?
发布于 2011-07-18 13:08:58
下面的代码应该可以工作:
在命令行中:
rails new MYAPP -T # The -T option tells rails not to include Test::Unit
在Gemfile中:
gem 'rspec-rails'
在命令行中:
bundle install
rails g rspec:install
发布于 2011-07-18 14:17:07
创建新的rails应用程序,如下所示:
rails new <app_name> -T
或者从现有应用程序中删除test
目录:
rm -rf test/
在Gemfile中创建一个条目:
gem 'rspec-rails'
从命令行安装gem
$ bundle install
从命令行将rspec安装到您的应用程序中:
$ rails g rspec:install
现在,您的rails应用程序使用RSpec而不是测试单元。
发布于 2018-02-21 19:24:28
使用以下命令创建rails应用程序后:
rails new <app_name> -T # to exclude Test::Unit
通过以下方式将RSpec gem添加到Gemfile中:
group :development, :test do
gem "rspec-rails"
end
在命令行中写入:
bundle install # this will install the missing gems
现在您需要通过运行以下命令来安装RSpec:
rails generate rspec:install
这将生成以下文件:
create .rspec
create spec
create spec/spec_helper.rb
create spec/rails_helper.rb
我强烈建议通读所有的spec_helper和rails_helper评论,以便更好地理解每个选项的作用。
设置好所有内容后,您可以使用以下命令运行所有测试:
bundle exec rspec
您可以在https://kolosek.com/rails-rspec-setup上阅读有关推荐的spec_helper和rails_helper配置的更多信息。
https://stackoverflow.com/questions/6728618
复制相似问题