Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails RSpec中it块和指定块之间的差异_Ruby On Rails_Ruby_Rspec - Fatal编程技术网

Ruby on rails RSpec中it块和指定块之间的差异

Ruby on rails RSpec中it块和指定块之间的差异,ruby-on-rails,ruby,rspec,Ruby On Rails,Ruby,Rspec,RSpec中的it块和指定块之间有什么区别 subject { MovieList.add_new(10) } specify { subject.should have(10).items } it { subject.track_number.should == 10} 他们似乎做同样的工作。只是确认一下。方法是;根据您的测试内容,提供它们是为了使以英语阅读的规格更准确。考虑这两个: describe Array do describe "with 3 items" do b

RSpec中的it块和指定块之间有什么区别

subject { MovieList.add_new(10) }

specify { subject.should have(10).items }
it { subject.track_number.should == 10}
他们似乎做同样的工作。只是确认一下。

方法是;根据您的测试内容,提供它们是为了使以英语阅读的规格更准确。考虑这两个:

describe Array do
  describe "with 3 items" do
    before { @arr = [1, 2, 3] }

    specify { @arr.should_not be_empty }
    specify { @arr.count.should eq(3) }
  end
end

describe Array do
  describe "with 3 items" do
    subject { [1, 2, 3] }

    it { should_not be_empty }
    its(:count) { should eq(3) }
  end
end

没错,布兰登,
it
specify
是相同的方法。你可以看到它们的定义。很好的捕捉!通过阅读源代码,您可以发现惊人的结果。:)我将更新答案。以下是截至2013年12月的示例方法名称的要点:(示例,it,specify,focus,…)建议不要使用
should
,并支持
expect
更新@Jordan:的优秀链接,现在是找到它的地方。