aar*_*ona 149 rspec testunit rspec2 ruby-on-rails-3
我已经test-unit安装和rspec安装(沿-core,-expectations,-mocks和-rails版本2.6.x的).当我运行该命令时rails new foo,它用于test-unit生成测试存根文件而不是rspec.
有没有一个选项,我可以告诉rails使用rspec来生成测试?
Zab*_*bba 258
以下应该有效:
rails new MYAPP -T # The -T option tells rails not to include Test::Unit
Run Code Online (Sandbox Code Playgroud)
gem 'rspec-rails'
Run Code Online (Sandbox Code Playgroud)
bundle install
rails g rspec:install
Run Code Online (Sandbox Code Playgroud)
Say*_*yuj 72
创建新的rails应用程序:
rails new <app_name> -T
Run Code Online (Sandbox Code Playgroud)
或者test从现有应用程序中删除您的目录:
rm -rf test/
Run Code Online (Sandbox Code Playgroud)
在Gemfile中输入一个条目:
gem 'rspec-rails'
Run Code Online (Sandbox Code Playgroud)
从命令行安装gem
$ bundle install
Run Code Online (Sandbox Code Playgroud)
从命令行安装rspec到您的应用程序:
$ rails g rspec:install
Run Code Online (Sandbox Code Playgroud)
现在您的rails应用程序使用RSpec而不是测试单元.
使用以下方法创建Rails应用程序后:
rails new <app_name> -T # to exclude Test::Unit
Run Code Online (Sandbox Code Playgroud)
通过以下方式将RSpec gem添加到您的Gemfile中:
group :development, :test do
gem "rspec-rails"
end
Run Code Online (Sandbox Code Playgroud)
在命令行中输入:
bundle install # this will install the missing gems
Run Code Online (Sandbox Code Playgroud)
现在,您需要运行以下命令来安装RSpec:
rails generate rspec:install
Run Code Online (Sandbox Code Playgroud)
这将生成以下文件:
create .rspec
create spec
create spec/spec_helper.rb
create spec/rails_helper.rb
Run Code Online (Sandbox Code Playgroud)
我强烈建议您通读所有spec_helper和rails_helper注释,以更好地了解每个选项的作用。
设置完所有内容后,您可以使用以下命令运行所有测试:
bundle exec rspec
Run Code Online (Sandbox Code Playgroud)
您可以在https://kolosek.com/rails-rspec-setup上阅读有关建议的spec_helper和rails_helper配置的更多信息。
| 归档时间: |
|
| 查看次数: |
40974 次 |
| 最近记录: |