Tar*_*ank 2 ruby ruby-on-rails performance-testing
我目前正在尝试遵循Ruby on Rails 文档中给出的性能测试教程。但我在第一步就陷入了困境!
当我尝试运行下面给出的命令时,出现错误,
命令:
$ rails generate performance_test homepage
Run Code Online (Sandbox Code Playgroud)
我得到的错误:
Could not find generator 'performance_test'. Maybe you meant 'integration_test', 'resource_route' or 'coffee:assets'
Run Code Online (Sandbox Code Playgroud)
我跑去"rails generator --help"
查看可以生成的可能文件,下面是我得到的输出,
Running via Spring preloader in process 9465
Expected string default value for '--jbuilder'; got true (boolean)
Usage: rails generate GENERATOR [args] [options]
General options:
-h, [--help] # Print generator's options and usage
-p, [--pretend] # Run but do not make any changes
-f, [--force] # Overwrite files that already exist
-s, [--skip] # Skip files that already exist
-q, [--quiet] # Suppress status output
Please choose a generator below.
Expected string default value for '--helper'; got true (boolean)
Expected string default value for '--assets'; got true (boolean)
Rails:
assets
channel
controller
generator
helper
integration_test
jbuilder
job
mailer
migration
model
resource
responders_controller
scaffold
scaffold_controller
task
Coffee:
coffee:assets
Js:
js:assets
RailsScript:
rails_script:class
rails_script:controller
rails_script:element
rails_script:install
rails_script:utility
Responders:
responders:install
Rspec:
rspec:controller
rspec:feature
rspec:helper
rspec:install
rspec:integration
rspec:job
rspec:mailer
rspec:model
rspec:observer
rspec:request
rspec:scaffold
rspec:view
SimpleCalendar:
simple_calendar:views
TestUnit:
test_unit:controller
test_unit:generator
test_unit:helper
test_unit:integration
test_unit:job
test_unit:mailer
test_unit:model
test_unit:plugin
test_unit:scaffold
Run Code Online (Sandbox Code Playgroud)
如上所示,那里没有定义性能测试单元。RoR 5 中是否存在这种情况,或者我是否搞乱了项目,从而无法生成 Performance_test 文件?
Rails 4 取消了 Performance_test 的默认设置。您可以在您提供的 Rails 文档链接中看到,它适用于 Rails 3.2.x
来自https://github.com/rails/rails-perftest
从 Rails 4 开始,性能测试不再是默认堆栈的一部分。
在他们的 github 页面上有将其添加回来的说明,这里是相关的 gem。
gem 'rails-perftest'
gem 'ruby-prof'
Run Code Online (Sandbox Code Playgroud)