--pattern 选项

当您在不提供特定文件名的情况下运行 RSpec 时,它通过对提供的目录参数或 `spec`(如果未提供目录)应用模式来确定要加载的文件。默认情况下,RSpec 使用以下模式

  "**{,/*/**}/*_spec.rb"

使用 `--pattern` 选项声明不同的模式。

背景

给定一个名为“spec/example_spec.rb”的文件,其中包含

RSpec.describe "two specs" do
  it "passes" do
  end

  it "passes too" do
  end
end

以及一个名为“spec/example_test.rb”的文件,其中包含

RSpec.describe "one spec" do
  it "passes" do
  end
end

默认情况下,RSpec 运行匹配的规范文件

我运行 `rspec` 时

那么输出应包含“2 个示例,0 个失败”。

`--pattern` 标志使 RSpec 运行与指定模式匹配的文件并忽略默认模式

我运行 `rspec -P "**/*_test.rb"` 时

那么输出应包含“1 个示例,0 个失败”。

`--pattern` 标志可用于传递多个模式,用逗号分隔

我运行 `rspec -P "**/*_test.rb,**/*_spec.rb"` 时

那么输出应包含“3 个示例,0 个失败”。

`--pattern` 标志接受 shell 风格的全局并集

我运行 `rspec -P "**/*_{test,spec}.rb"` 时

那么输出应包含“3 个示例,0 个失败”。