2016-07-29 22 views

回答

0

上述選擇器將產生多個結果,即元素,如果存在,在By.cssSelector查詢所使用的類匹配多個元件是。

爲了只獲取包含「BNSF0000712570」的元素,我建議您嘗試使用「ext:qtip」屬性代替它(包含禁用文本的每個元素都是唯一的) text:

def myText = $(「div[ext:qtip=‘Id: 0001’]」).text(); 
println myText; 
assert myText == "BNSF0000712570"; 

@Saurabh Gar:你爲什麼要使用WebDriver「By」類選擇器?藉助Geb,您可以使用各種更簡單的方式編寫選擇器,例如就像上面使用的那個一樣。

0

你應該嘗試如下使用By.cssSelector: -

def text = driver.findElement(By.cssSelector("td.x-grid3-td-elementvalue").text 

或者

def text = driver.findElement(By.cssSelector("div.x-grid3-col-elementvalue").text 

assert text == "BNSF0000712570" 
println text 

備註 : - 如果仍然沒有得到文本需要共享表格HTML而不是截圖,那就是爲什麼,可以做出最好的定位器。

希望它能幫助.. :)

+0

感謝Saurab的快速回復,我嘗試使用CSS選擇器,它不工作。見下文HTML禁用文本

BNSF0000712570

+0

@GopalaKrishnan你是什麼意思不工作?有什麼異常嗎? –