Ruby RSpec单元测试给出了未定义的方法错误

时间:2012-08-13 23:11:42

标签: ruby unit-testing rspec

我使用RSpec创建了一个单元测试。

app.rb有:

module AppModule
  class App
    def get_item
      str = self.get_string
      puts "in get_item - #{str}"
    end

    def get_string
      puts "hello, world"
    end
  end
end

app_test.rb有:

require 'test_helper'
require 'env'

describe App do
  before :each do
    @var = App.new
  end

  describe "firsttest" do
    it "should print string" do
      @var.get_item
    end
  end
end

我发现get_item被正确调用。但当它到达get_string时,我收到一个错误:

#App的未定义方法get_string:0x2eaqc4600

感谢。

1 个答案:

答案 0 :(得分:0)

看起来像命名空间问题。我不知道你的环境,但你确定@var是AppModule :: App的一个实例而不只是:: App?