0

我使用 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:0x2eaqc4600 的未定义方法 get_string

谢谢。

4

1 回答 1

0

看起来像一个命名空间问题。我不了解您的环境,但您确定 @var 是 AppModule::App 的实例而不仅仅是 ::App 吗?

于 2012-08-13T23:32:33.057 回答