2

我在 env.rb 中定义了一个变量作为用户 ID。

用户名='1234'

在我的 Cucumber 测试场景中,我希望确认我的响应包含正确的用户 ID。但是,我不希望在我的 Senario 或步骤定义中硬编码。有可能这样做吗?

4

2 回答 2

3

我会放置一个附加文件,比如说test_constanst.rb在 features/ 目录中。在那里,我会定义一个这样的模块:

module TestConstants
  def self.user_id
    1234
  end
end

像这样,您将它与测试配置和代码分开。您只需要从env.rb.

于 2012-08-30T07:58:42.963 回答
2

Ruby 中的变量范围在某种程度上由 sigils 控制。以 $ 开头的变量是全局变量,以 @ 开头的变量是实例变量,@@ 表示类变量,以大写字母开头的名称是常量。使变量全局,它将在任何地方都可用,即

$userid='1234'

于 2012-08-30T05:46:15.613 回答