我正在使用Robot Framework和Selenium2Library
该按钮的文本为“Save”,并且它的xpath中没有更独特的内容,所以我正在尝试根据元素的文本编写一个xpath。 如何使用那段html基于元素的文本编写一个xpath:
<button class="slds-button slds-button--brand cuf-publisherShareButton NARROW uiButton" type="button" data-aura-rendered-by="1571:2954;a" data-aura-class="uiButton">
<span class=" label bBody truncate" dir="ltr" data-aura-rendered-by="1574:2954;a">Save</span>
</button>
(这是在文件的中间)。
编辑: 似乎在下一个标签上有少量具有相同文本的元素(目前看不见)。 我应该如何使用此文本为第二个元素编写xpath?我的意思是索引= 1。
答案 0 :(得分:2)
Click Button //button[.//text() = 'Save']
“机器人框架”是找到带有“保存”文本并单击它的按钮的方式。
在@Tomalak的帮助下修复 &LT; 3
答案 1 :(得分:1)
尝试搜索包含所需文字范围的按钮
WebElement saveButton = driver.findElement(By.xpath(".//button/span[text()='Save']")
答案 2 :(得分:0)
使用以下xpath
查找文字为save
-
//button[contains(.,'Save')]
答案 3 :(得分:0)
使用以下关键字,首先验证元素是否存在,然后点击定位器所在的元素
Element should become visible xpath=//button/span[text()='Save']
Click Button xpath=//button/span[text()='Save']
还有另一个内置关键字
Click Element xpath=//button/span[text()='Save']
答案 4 :(得分:0)
尝试使用以下xpath:
xpath=//span[contains(text(),'Save')]
答案 5 :(得分:0)
试试这个 -
{ "packages": "../../Packages" }