0

私は持っている:

module A
  H = { c: @user }

  def b
    H.fetch(:c).should_not be_nil
  end
end
World(A)

@userCucumber ステップで定義されています。@user が nil であるため、呼び出すとエラーが発生します。

注: コードを に変更すると@user.should_not be_nil、例外は発生しません。

Cucumber インスタンス変数を World のモジュール内で利用できるようにする方法は?

4

2 に答える 2

0

これは、CucumberメーリングリストでMattWynneが受け取った応答です。

このコードは意味がありません

   H = { c: @user }

この行は、モジュールが定義されたときに実行されます。使用する@userインスタンス変数はまだ存在していません。実行時にのみ存在します。

于 2013-02-20T20:26:40.630 に答える
0

これは機能しますか?

module A
  H = { c: :@user }

  def b
    send(H.fetch(:c)).should_not be_nil
  end
end
World(A)
于 2013-02-12T13:25:53.377 に答える