我已经将json用于下面的selenium ruby语法
@driver.find_element(:css, "#poi-tabs *[class='tab ']")
这可以按预期工作
@driver.find_element(:css, JSON.parse(file)['xyz']['elemen'])
但是下面的 FAILS 可以正常工作,因为从.json文件获取的值:css
不支持
@driver.find_element(JSON.parse(file)['xyz']['selecto'], JSON.parse(file)['xyz']['elemen'])
注意: 当我打印" selecto"和" elemen",两者都带来了确切的输出但不确定格式;是否有任何格式来处理它?或任何其他解决方法
可用或.json
{
"xyz": {
"selecto": ":css",
"elemen": "#poi-tabs *[class='tab ']"
}
}
答案 0 :(得分:1)
@driver.find_element(:css, JSON.parse(file)['xyz']['elemen'])
这里:css是一个符号而在
中@driver.find_element(JSON.parse(file)['xyz']['selecto'], JSON.parse(file)['xyz']['elemen'])
:css是一个字符串。所以你没有得到理想的结果
尝试
@driver.find_element(eval(JSON.parse(file)['xyz']['selecto']), JSON.parse(file)['xyz']['elemen'])