方法中的全局字符串变量插值



我正在尝试使用水豚和黄瓜与红宝石创建自动化功能/步骤定义。 整个目的是拥有一个动态的 XPath 选择器,如下所示:

slector =   "/span[text()=dynamic]"

从方法中定义更多选择器。 问题是,是否可以在方法中插入变量?

define_method :foo do |dynamic_value|
selector ['dynamic'] = #{dynamic_value}
end

或类似的东西? 提前感谢!

你做了一个这样的方法,它需要一个参数,它是动态值并构建选择器

def build_selector(dynamic_value)
"/span[text()=#{dynamic_value}]"
end

然后当需要使用它时,你写selector = build_selector("some-value").如果在可访问的作用域中定义了该方法,则可以在另一个方法中执行最后一步(如果您不知道这一点,可以在根作用域上定义该方法(。

最新更新