【问题标题】:Issue locating button in Safari using Watir使用 Watir 在 Safari 中问题定位按钮
【发布时间】:2018-07-31 10:23:20
【问题描述】:

我在 Safari 中定位按钮时遇到了奇怪的问题。 这是按钮的html:

<span id="submit-btn" class="btn">Submit</span>

当我试图通过 ID 定位按钮时,它找不到它

browser.span(:css => "span[id=submit-btn]")
browser.span(:id => "submit-btn")

但是当我通过文本定位它时,它会正确找到按钮:

browser.span(:text => "Submit")

什么是可能的问题? Safari webdriver 有问题吗?我正在使用本机 webdriver 在 Safari 11.1 上运行。 尝试了几种不同的方法来通过 xpath 和父元素定位按钮,但没有运气。 注意:所有定位按钮的方法都适用于带有 Chrome 的窗口。

【问题讨论】:

  • 试试browser.spans(id: 'submit-btn').size。您很有可能在页面上有多个提交按钮。
  • 啊,我没有看到最后一部分。试试browser.spans.map(&amp;:id) 应该会告诉你 id 值是什么。也许 safari 中有没有被正确处理的空间。

标签: ruby safari webdriver watir


【解决方案1】:

尝试使用spans 而不是span。这对我有用:

browser.spans(:id => "submit-btn").first

【讨论】:

  • #spans 将返回 SpanCollection 而不是 Span,您至少需要添加 .first
  • @titusfortner - 好点。我编辑了我的答案以反映这一点
猜你喜欢
  • 2013-11-28
  • 2018-09-11
  • 2010-09-06
  • 2017-02-07
  • 2011-08-02
  • 1970-01-01
  • 2017-06-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多