替换ruby中的变量值,同时使用";设置值;“设置”;命令

替换ruby中的变量值,同时使用";设置值;“设置”;命令,ruby,watir,Ruby,Watir,我有一个.properties文件,如下所示: user:abcd pwd:xyz system:test 接下来,我有一个带有Watir的ruby脚本,用于浏览器自动化。在这个脚本中,我有如下语句 browser.text_field(:id => 'identifierId').set "#{user}:variable to be replaced by its value from .properties file". 同样,“pwd”和“系统”也需要替换其他值 我根据以下帖子

我有一个.properties文件,如下所示:

user:abcd
pwd:xyz
system:test
接下来,我有一个带有Watir的ruby脚本,用于浏览器自动化。在这个脚本中,我有如下语句

browser.text_field(:id => 'identifierId').set "#{user}:variable to be replaced by its value from .properties file".
同样,“pwd”和“系统”也需要替换其他值

我根据以下帖子尝试了解决方案:

但是,“set”命令是将任何已设置为参数的内容设置为参数,而不是将变量替换为其值


请帮助。

您必须从文件中读取信息。 大多数Watir用户为此利用yaml文件

config/properties.yml

user: abcd
pwd: xyz
system: test
然后读取yaml文件并解析数据:

properties = YAML.safe_load(IO.read('config/properties.yml'))

text_field = browser.text_field(id: 'identifierId')
text_field.set properties['user']

或者,您也可以查看一个页面对象gem,该页面对象设计用于处理gem

您必须从文件中读取信息。 大多数Watir用户为此利用yaml文件

config/properties.yml

user: abcd
pwd: xyz
system: test
然后读取yaml文件并解析数据:

properties = YAML.safe_load(IO.read('config/properties.yml'))

text_field = browser.text_field(id: 'identifierId')
text_field.set properties['user']

或者,您也可以查看一个页面,该页面设计用于处理他的页面对象gem

但并不清楚您要做什么。你能举一个你想发生什么的例子吗?您只是想更改文件中的一些关键VAL吗?不太清楚您想做什么。你能举一个你想发生什么的例子吗?您只是想更改文件中的一些关键VAL吗?这正是我想要的。谢谢,这正是我想要的。非常感谢。