【问题标题】:Two Element are referring same the Xpath in selenium两个元素在 selenium 中引用相同的 Xpath
【发布时间】:2017-12-25 13:56:59
【问题描述】:

场景是“使用浏览按钮上传文件”。

在查找 Xpath 时有两个元素(输入文本框、浏览按钮),这两个元素都引用相同的 Xpath。(例如://div//tr//td//input)。因此单击、鼠标按下事件、快捷键、Tab&Enter 不起作用。于是使用了Robot类函数robot.mouseMove(400,600)【x轴,y轴是硬编码的】。

问题:谁能帮我在没有 Xpath 的页面中找到浏览按钮元素(因为我对 x 轴、y 轴进行了硬编码)?

【问题讨论】:

  • //div//tr//td//input[1] 指第一个, //div//tr//td//input[2] 指第二个
  • 你能发同样的html代码吗

标签: javascript html selenium xpath


【解决方案1】:

您可以添加谓词来区分这两个元素:

//div//tr//td//input[@type="text"]

用于输入和

//div//tr//td//input[@type="button"]

按钮

附:如果输入字段用于文件上传,则谓词应为[@type="file"]

【讨论】:

  • 你好安德森,
    ....... tr>
  • 嗨安德森,代码只是这样。 “
    .......
    ” 不是两个输入标签。我使用机器人类进行鼠标移动,因为以上两个元素引用了相同的标签。但缺点是在机器人功能中硬编码了 X 轴和 Y 轴。请帮助我在没有 Xpath 的屏幕中找到 Web 元素。
  • 两个元素具有相同的<input> 标签,但没有输入标签?!怎么会这样?分享更多细节,因为目前您的问题还不清楚
猜你喜欢
相关资源
最近更新 更多
热门标签