用法

您需要告诉 RuboCop 加载 factory_bot 扩展。有三种方法可以做到这一点

RuboCop 配置文件

将此内容放入您的 .rubocop.yml

require: rubocop-factory_bot

或者,如果您使用多个扩展

require:
  - rubocop-factory_bot
  - rubocop-performance

现在您可以运行 rubocop,它将自动加载 RuboCop factory_bot cops 以及标准 cops。

命令行

$ rubocop --require rubocop-factory_bot

Rake 任务

RuboCop::RakeTask.new do |task|
  task.requires << 'rubocop-factory_bot'
end

检查非默认文件路径

默认情况下,rubocop-factory_bot 只检查以下代码

FactoryBot:
  Include:
    - "**/spec/factories.rb"
    - "**/spec/factories/**/*.rb"
    - "**/test/factories.rb"
    - "**/test/factories/**/*.rb"
    - "**/features/support/factories/**/*.rb"

您可以在配置文件中通过设置 Include 来覆盖此设置

# Inspect files in `my_factory/` directory
FactoryBot:
  Include:
    - '**/my_factory/**/*'
# Inspect only files ending with `_my_factory.rb`
FactoryBot:
  Include:
    - '**/*_my_factory.rb'
请注意,Include 的合并模式设置为覆盖默认设置,因此如果您打算添加路径并保留默认路径,则应在配置中包含默认的 Include 路径。