相关疑难解决方法(0)

Rspec any_instance.stub为nil引发未定义的方法`any_instance_recorder_for':NilClass异常

这是我正在测试的类,包含在Foo.rb中:

class Foo
    def bar
        return 2
    end
end
Run Code Online (Sandbox Code Playgroud)

这是我在Foo_spec.rb中包含的测试:

require "./Foo.rb"

describe "Foo" do
    before(:all) do
        puts "#{Foo == nil}"
        Foo.any_instance.stub(:bar).and_return(1)
    end

    it "should pass this" do
        f = Foo.new
        f.bar.should eq 1
    end
end
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:

false
F

Failures:

  1) Foo Should pass this
     Failure/Error: Foo.any_instance.stub(:bar).and_return(1)
     NoMethodError:
       undefined method `any_instance_recorder_for' for nil:NilClass
     # ./Foo_spec.rb:6:in `block (2 levels) in <top (required)>'

Finished in 0 seconds
1 example, 1 failure

Failed examples:

rspec ./Foo_spec.rb:9 # …
Run Code Online (Sandbox Code Playgroud)

ruby rspec

9
推荐指数
2
解决办法
7418
查看次数

标签 统计

rspec ×1

ruby ×1