我在 env.rb 中定义了一个变量作为用户 ID。
用户名='1234'
在我的 Cucumber 测试场景中,我希望确认我的响应包含正确的用户 ID。但是,我不希望在我的 Senario 或步骤定义中硬编码。有可能这样做吗?
我会放置一个附加文件,比如说test_constanst.rb
在 features/ 目录中。在那里,我会定义一个这样的模块:
module TestConstants
def self.user_id
1234
end
end
像这样,您将它与测试配置和代码分开。您只需要从env.rb
.
Ruby 中的变量范围在某种程度上由 sigils 控制。以 $ 开头的变量是全局变量,以 @ 开头的变量是实例变量,@@ 表示类变量,以大写字母开头的名称是常量。使变量全局,它将在任何地方都可用,即
$userid='1234'