0

rspecが提供するlet関数の使用に問題があります。

app / spec / class_spec.rb内:

require 'spec_helper'
module App
   describe Class do
      let(:instance) {Class.new('param')}

      describe "#method" do
         it "does something" do
            instance.method(...)
            # clever test code
         end
      .
      .
      .
end

私はRSpecの本をフォローしてきましたが、その例(うまくいきました!)によると、残りの「describeClass」ブロックの変数インスタンスにアクセスできるはずです。しかし、エラーが発生します:

Uninitialized constant App::instance

私はまた、このコードを無駄に追加しようとしました:

before :all do
    instance
end

私は何が間違っているのですか?

4

1 に答える 1

1

それ以外の

module App
   describe Class do

ちょうど使用:

describe App::Class

ヒント: 代わりにlet(:instance) {Class.new('param')}、 と書くこともできますlet(:instance) {described_class.new('param')}。それはもっと賢いです。

于 2013-01-09T10:17:43.980 に答える