我在RSpec上描述类
class Pupil
def initialize(name, dateOfBirth)
@name = name
@dateOfBirth = dateOfBirth
end
def name
@name
end
def ages
#should calculate ages
end
end
describe Pupil do
context do
pupil = Pupil.new("Stanislav Majewski", "1 april 1999")
it "should returns name" do
pupil.name.should eq("Stanislav Majewski")
end
it "should calculates ages" do
#not described
end
end
end
RSpec 返回:
..
Finished in 0.00203 seconds
2 examples, 0 failures
是否有一种优雅的方式来显示未描述该方法的失败消息?
如果你担心你会创建一个测试而忘记把它放进去(有时我会创建三个我知道我需要的测试,并依次处理它们中的每一个),那么你可以执行以下操作:
it "should calculates ages" do
fail
end
或
it "should calculates ages"
。这就是全部(无块)将自动将测试标记为待处理。换句话说,在测试中有实际的测试代码之前,不要填写测试。
此外,如果您不测试任何断言(即,如果您的规范不包含任何调用 to should
的行),您的规范将显示通过。这种情况发生在我身上几次,我写了一个新测试,期望它失败,但事实并非如此,因为我忘记包含对should
的调用,这是实际测试断言的内容。