【问题标题】:Disable unit testing generators in Rails在 Rails 中禁用单元测试生成器
【发布时间】:2012-01-19 19:48:35
【问题描述】:

有谁知道如何在 Rails 中禁用自动生成单元测试文件?每当创建控制器、模型或迁移时,它都会在 test/ 目录中创建相关文件;我需要这个禁用。

另外,是否可以让 RPsec 接管,以便在执行标准 rails g model|controller|migration 命令时使用 RSpec(在 spec/ 目录中)创建文件?

【问题讨论】:

  • 如果你想禁止生成测试的所有部分,你可以在 application.rb 中使用config.generators.test_framework false

标签: ruby-on-rails unit-testing rspec generator


【解决方案1】:

你想在你的 application.rb 里有这样的东西

config.generators do |g|
    g.test_framework  :rspec, :fixture => false
    g.view_specs      false
    g.helper_specs    false
end

更多信息:http://guides.rubyonrails.org/generators.html#customizing-your-workflow

我个人使用这个:

config.generators do |g|
    g.orm             :mongoid
    g.template_engine :haml
    g.test_framework  :rspec, :fixture => false
    g.view_specs      false
    g.helper_specs    false
    g.fixture_replacement :fabrication
end

【讨论】:

  • ...除了应该是:fixture => false。 Rails 固定装置是危险的,会使您的测试变得脆弱和不准确。改用工厂。
  • 对于 Rails 引擎注释,这将进入 engine.rb
  • 这不会为我在 Rails 5 上禁用 test_unit 生成。如果我这样做 g.test_framework false 它只会禁用 rspec 生成。
  • 我仍然在 test/integration/job_test.rb 中得到一个文件(我的班级名称工作)这是 Rspec 的形式吗?
  • @Jepzen 我必须添加 g.integration_tool :rspec 才能解决这个问题并让 rspec 处理集成。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-07-06
  • 1970-01-01
  • 2023-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多