【发布时间】:2015-02-23 19:50:09
【问题描述】:
对于网络应用程序的测试自动化,我目前使用的是 Robot 框架和 Selenium 库。有一刻我想点击一个按钮,然后我等待一个元素出现。唉,点击虽然在日志中记录成功,但并没有导致我希望的元素幻影。事实上,就好像点击从未发生过一样。
要单击按钮,我使用 xpath 检索它。使用 Firepath,我成功验证了该元素是唯一的并且确实存在,但它显示的内容让我认为我找到了按钮未正确单击的原因
您可以在浅蓝色中看到我要单击的按钮,并用虚线包裹由 firepath 检测到的区域。
是否有可能点击按钮旁边而不是它?
这是被指控的行:
Click Element xpath=(.//button[contains(@id,'editContract')])[1
编辑: 页面的 HTML:
<button id="listContractTableForm:listContractTable:0:editContract" name="listContractTableForm:listContractTable:0:editContract" type="button" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only" onclick="window.location.href='destinationPage?faces-redirect=true&contractEntityContractId=678'">
<span class="ui-button-icon-left ui-icon ui-c ui-icon-search"></span>
<span class="ui-button-text ui-c">ui-button</span>
</button>
【问题讨论】:
-
这里是按钮的html代码,很抱歉我不能显示太多代码。
-
最好的猜测是您的 xpath 匹配 DOM 中的另一个元素,而是单击该元素。使用
Get Matching Xpath Count尝试您的 xpath,看看它返回了多少结果。
标签: selenium xpath click robotframework