从命令行运行Rspec测试时,如何排除与特定标记匹配的测试?
答案 0 :(得分:14)
将~@
与标记名称一起使用,如下所示:
rspec spec --tag ~@slow
请参阅文档:https://www.relishapp.com/rspec/rspec-core/docs/command-line/tag-option
我现在正在Spork上运行我的测试,似乎它忽略了这个指令。不知道为什么。
答案 1 :(得分:0)
我也有类似的要求,但是我希望默认情况下不包含标记测试,然后仅在具体说明时才运行,因此不必记住每次都包含标记。
为此,我在规范助手中添加了以下行:
config.filter_run_excluding :slow => true
现在,当我运行rspec .
时,它将运行除标记有slow
的测试外的所有内容。另外,如果我想运行慢速测试,可以使用rspec . --tag slow
。