Robot Framework-定位具有accept属性的输入元素失败



我正在为具有以下CSS定位器的化身上传模块编写自动化脚本:

input[accept="image/png,image/jpeg,image/gif,image/bmp"]

我正在使用Robot Framework的Wait Until Element Is Visible关键字来查找上面的定位器,但没有成功,错误为:

Element 'css=input[accept="image/png,image/jpeg,image/gif,image/bmp"]' not visible after 30 seconds.

增加超时也不起作用。在Chrome开发工具中使用相同的方法可以成功地找到该元素。我的猜测是逗号/斜杠扰乱了Robot的定位器解析。我的问题是:编写定位器的正确方法是什么?

虽然存在于DOM中,但元素可能不可见/不呈现。文件上传input元素经常出现这种情况——UI呈现出不同的东西,buttondiv应用了样式,更适合整体设计。

因此,如果检查是可见的,就会理所当然地失败。更改使用前的方法,用Page Should Contain Element关键字验证input是否在HTML中——这实际上与您在浏览器的开发工具中所做的相同——然后继续成功。

您正在使用的CSS定位器没有问题。也许元素在另一个iframe中?

最新更新