如何使用test / spec运行特定测试(不是特定文件,而是给定文件中的规范)?

时间:2009-02-07 14:52:23

标签: ruby

使用Test :: Unit,我可以运行:

ruby path/to/test.rb --name=test_name_that_i_want_to_run

到目前为止,我还没有弄清楚如何使用测试/规范规范来做到这一点。我想知道规范自动命名的方式是否允许我做这样的事情。

3 个答案:

答案 0 :(得分:2)

以下列规范为例:

  require 'rubygems'  
  require 'spec'  

  describe 'tests' do  
    it 'should be true' do  
      1.should == 1  
    end

    it 'should be false' do  
      1.should_not == 2  
    end  
  end 

您可以使用-e标志执行单个规范并提供it块指定的部分。例如ruby my_spec.rb -e 'should be false'

答案 1 :(得分:0)

在联系宝石维护人员Christian Neukirchen之后,我发现了如何做到这一点,所以我在这里记录它以供将来参考。

specrb path/to/test.rb --name ".*should behave this way.*"

我需要使用specrb测试运行器,扩展版Test :: Unit的测试运行器,而不仅仅是ruby命令。

答案 2 :(得分:0)

您也可以使用ruby命令执行此操作:

ruby​​ path / to / test.rb -n“/应该表现得这样/”