如何排除与特定标签匹配的 RSpec 测试?
从命令行运行 RSpec 测试时,如何排除与特定标签匹配的测试?
When running my RSpec tests from the command line, how can I exclude tests matching a specific tag?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用
~@
与标签名称,如下所示:请参阅文档:https://www.relishapp.com/rspec/rspec-core/docs/command-line/tag-option
更新
我现在正在 Spork 上运行测试,而且看起来好像忽略该指令。不知道为什么。
Use
~@
with the name of the tag, like this:See the docs: https://www.relishapp.com/rspec/rspec-core/docs/command-line/tag-option
Update
I'm now running my tests on Spork, and it seems as though it ignores this directive. Not sure why.
我有类似的要求,但我希望默认情况下排除标记的测试,然后仅在我指定它时运行,这样我就不必记住每次都包含标记。
为了实现这一点,我在规范助手中添加了以下行:
现在,当我运行 rspec . 时,它将运行除标记为
slow
的测试之外的所有内容。或者,如果我想运行缓慢的测试,我可以使用 rspec 。 --标记慢。I had similar requirements however I wanted the tagged test excluded by default and then only ran when I specific it so I don't have to remember to include the tag each time.
To achieve this I added the following line to my spec helper:
Now when I run
rspec .
, it will run everything except tests tagged withslow
. Alternatively if I want to run the slow tests I can userspec . --tag slow
.