我在env.rb中将变量定义为userid。
用户ID = '1234'
在我的Cucumber测试中,我希望确认我的响应包含正确的用户ID。但是,我不希望在我的Senario或步骤定义中对其进行硬编码。是否可以这样做?
答案 0 :(得分:3)
我会在feature / dir中放置一个额外的文件,让我们说test_constanst.rb
。在那里,我会定义一个这样的模块:
module TestConstants
def self.user_id
1234
end
end
像这样,你将它与测试配置和代码分开。您只需要从env.rb
请求该文件。
答案 1 :(得分:2)
Ruby中的变量范围在某种程度上受到了sigils的控制。以$开头的变量是全局变量,带@的变量是实例变量,@@表示类变量,以大写字母开头的变量是常量。使变量成为全局变量,并且随处可用,即
$用户ID = '1234'