RSpec - 标签


RSpec 标签提供了一种在规范文件中运行特定测试的简单方法。默认情况下,RSpec 将运行它运行的规范文件中的所有测试,但您可能只需要运行其中的一部分。假设您有一些运行速度非常快的测试,并且您刚刚对应用程序代码进行了更改,并且您只想运行快速测试,此代码将演示如何使用 RSpec 标签来执行此操作。

describe "How to run specific Examples with Tags" do 
   it 'is a slow test', :slow = > true do 
      sleep 10 
      puts 'This test is slow!' 
   end 
   
   it 'is a fast test', :fast = > true do 
      puts 'This test is fast!' 
   end 
end

现在,将上述代码保存在名为 tag_spec.rb 的新文件中。从命令行运行以下命令:rspec --tag Slow tag_spec.rb

你会看到这个输出 -

运行选项:包括 {: Slow = >true}

This test is slow! 
. 
Finished in 10 seconds (files took 0.11601 seconds to load) 
1 example, 0 failures

然后,运行以下命令: rspec --tag fast tag_spec.rb

你会看到这个输出 -

Run options: include {:fast = >true} 
This test is fast! 
. 
Finished in 0.001 seconds (files took 0.11201 seconds to load) 
1 example, 0 failures

正如您所看到的,RSpec 标签使测试子集变得非常容易!