2016-01-20 113 views
1

我曾爲了找到在XPath的元素硒的webdriver不會在這種情況下工作注意到,功能文本():查找XPath中的文本不工作元素 - 硒的webdriver

<button class="btn btn-primary btn-labeled ng-binding" ng-click="ok()" type="button"> 
<span class="btn-label"> 
<i class="fa fa-check"/> 
</span> 
Selecionar 
</button> 

正如你所看到的,文本'Selecionar'在按鈕標籤內,但在文本之後還有其他標籤,在這種情況下,當我嘗試通過xpath使用此模式來查找元素時:// * [text()='Selecionar']找不到元件。

你們都知道我是怎麼找到元素按鈕,在這種情況下,使用其文本(因爲在其他情況下,這將是唯一的選擇)

回答

0

不能使用精確的文本匹配在這種情況下,由於假設實際文字前有換行符。使用contains()normalize-space()

//button[contains(., 'Selecionar')] 
//button[normalize-space(.) = 'Selecionar'] 
+0

這兩個選項解決了我的問題,謝謝:) – Rogger