2

env.rb で変数をユーザー ID として定義しました。

ユーザー ID='1234'

Cucumber テストのシナリオで、応答に正しいユーザー ID が含まれていることを確認したいと思います。ただし、シナリオまたはステップ定義で同じことをハードコーディングしたくありません。そうすることは可能ですか?

4

2 に答える 2

3

追加のファイルを配置します。たとえばtest_constanst.rb、features/ dir に配置します。そこで、次のようなモジュールを定義します。

module TestConstants
  def self.user_id
    1234
  end
end

このように、テスト構成とコードから分離されています。からファイルを必要とするだけですenv.rb

于 2012-08-30T07:58:42.963 に答える
2

Ruby の変数のスコープは、シジルによってある程度制御されます。$ で始まる変数はグローバル、@ で始まる変数はインスタンス変数、@@ はクラス変数を意味し、大文字で始まる名前は定数です。変数をグローバルにすると、どこでも使用できるようになります。

$userid='1234'

于 2012-08-30T05:46:15.613 に答える