2017-03-16 40 views
0
返回正確的對象

我使用JSON的下方硒的Ruby語法無法從Json的

@driver.find_element(:css, "#poi-tabs *[class='tab ']") 

可正常工作

@driver.find_element(:css, JSON.parse(file)['xyz']['elemen']) 

但低於失敗工作,因爲取自.json文件的值:css在這裏不支持

@driver.find_element(JSON.parse(file)['xyz']['selecto'], JSON.parse(file)['xyz']['elemen']) 

注意: 當我打印「selecto」和「elemen」,都帶來確切的輸出,但不確定的格式;有沒有處理它的格式?或任何其他的解決方法

enter image description here


推介or.json

{ 
    "xyz": { 
    "selecto": ":css", 
    "elemen": "#poi-tabs *[class='tab ']" 
    } 
} 

回答

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'])