我正在尝试使用水豚和黄瓜与红宝石创建自动化功能/步骤定义。 整个目的是拥有一个动态的 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")
.如果在可访问的作用域中定义了该方法,则可以在另一个方法中执行最后一步(如果您不知道这一点,可以在根作用域上定义该方法(。