您遇到的问题可以通过使用--tag
rspec 中的选项来解决。您可以将标签应用于失败的组,然后编写一个小脚本以您想要的顺序执行它们。这是标签上的 rspec 文档页面。
使用 --tag(或 -t)选项按标签过滤示例。
标签可以是简单的名称或名称:值对。在第一种情况下,带有 :name => true 的示例将被过滤。在第二种情况下,具有 :name => value 的示例将被过滤,其中 value 始终是一个字符串。在这两种情况下,名称都会转换为符号。
标签也可以通过在标签前添加 ~ 来排除示例。例如,~tag 将排除所有标有 :tag => true 的示例,而 ~tag:value 将排除所有标有 :tag => value 的示例。
为了与 Cucumber 语法兼容,标签可以选择以 @ 符号开头,该符号将被忽略。
文档页面中的一些示例:
describe "group with tagged specs" do
it "example I'm working now", :focus => true do; end
it "special example with string", :type => 'special' do; end
it "slow example", :skip => true do; end
it "ordinary example", :speed => 'slow' do; end
end
这比使用行号或手动排除单个示例更容易。希望这可以帮助。