我没有找到 Rspecdescribe
方法的语法,但找到了一些示例。如果我理解正确,我们可以将describe
字符串、类名(例如模型名)以及字符串和类名一起作为参数传递给方法。这三种调用情况有什么区别describe
?
describe 'string' do
...
end
describe ModelName do
...
end
describe 'string', ModelName do
...
end
我没有找到 Rspecdescribe
方法的语法,但找到了一些示例。如果我理解正确,我们可以将describe
字符串、类名(例如模型名)以及字符串和类名一起作为参数传递给方法。这三种调用情况有什么区别describe
?
describe 'string' do
...
end
describe ModelName do
...
end
describe 'string', ModelName do
...
end
它不是一个频繁使用的功能(诚然,在我有限的经验中),但如果提供了模块或类名(或者可能是其他正在测试的对象),它describe
可以提供subject
class Foo
end
describe Foo do
it "should be a Foo" do
subject.should be_a Foo
end
end
在上面的例子中,通过,给describe
一个类名会导致它Foo.new
从subject
. 而传递字符串"Foo"
不会以相同的方式工作。
另一个例子:
describe [], "an empty array" do
it "should return nil from any index" do
subject[1].should be_nil
end
end
运行它:
$ rspec -f d rspec_describe.rb
[] an empty array
should return nil from any index
Finished in 0.00255 seconds
1 example, 0 failures
这取决于您要描述的内容。
该描述适用于您和其他使用该代码库的开发人员。
$ rspec --format=documentation spec/
要不就
$ rspec -fd spec/
会出来
string
...
ModelName
...
string ModelName
...