【问题标题】:Selenium Element Cannot Be Scrolled Into View: (34). Using NUnit, C#硒元素无法滚动到视图中:(34)。使用 NUnit,C#
【发布时间】:2013-04-11 20:43:29
【问题描述】:

尝试单击回归测试脚本中的 <a> 标记时从标题中获取错误。我在这里研究了这个问题:Selenium::WebDriver::Error::MoveTargetOutOfBoundsError: Element cannot be scrolled into view:[object HTMLSpanElement] 和这里:https://groups.google.com/forum/#!msg/webdriver/R2jwSWrIK44/RaCLRPlKIWEJ,但我不明白问题的根本原因。

我尝试过使用 By.jQuery、By.Id、By.Css、By.Xpath 以及按索引选择,但总是得到相同的错误。以下是相关代码:

HTML:

<div id="divTabs">
    <a id="tabECheck" target="#divECheck">eCheck</a>
    <a id="tabAceComments" target="#divAceComments">Ace Comments</a>
    <a id="tabReviewComments" target="#divReviewComments">Review Comments</a>
    <a id="tabReviewHistory" target="#divReviewHistory">Review History</a>
</div>

CSS:

#divTabs{
    writing-mode: tb-rl; 
    -webkit-transform: rotate(90deg);   
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    position: absolute;
    width: 27px; 
    padding: 0px; 
    height: auto;
    display: table-row;
    margin-bottom: 10px;
}

#divTabs a
{
    border: 1px solid #CCC;
    padding: 3px;
    white-space: nowrap;
    cursor: pointer;
    color: #3966BF;
    display: table-cell;
    background-color: #FFF;
}

C#:

element = driver.FindElement(By.Id("tabReviewComments"));
element.Click();

如您所见,我正在尝试单击 ID 为“tabReviewComments”的第三个&lt;a&gt; 标记。但是,如果我让脚本单击 ID 为“tabECheck”的第一个 &lt;a&gt; 标记,则它的工作原理是我没有收到“无法将元素滚动到视图中”错误,元素被单击,并且脚本移过该行。可悲的是,我需要点击第三个&lt;a&gt; 标签。除了将&lt;a id="tabReviewComments" target="#divReviewComments"&gt;Review Comments&lt;/a&gt; 移到顶部还有什么想法吗?

谢谢!

【问题讨论】:

  • Firefox v10.0 和 Selenium 2.22.0.0

标签: c# html css selenium nunit


【解决方案1】:

就浏览器而言,该元素实际上可能无法点击,这可能是因为

  • 它的位置在屏幕外(负空间)
  • 它在另一个元素的后面(比如模态叠加或其他东西)
  • 它的大小为 0(有时 css 可能很有趣,浏览器可能会计算出与您看到的不同的大小)
  • 系统中的一个 UI 错误,导致元素因其他原因不可见

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-08
    • 2019-03-25
    • 2018-08-09
    • 1970-01-01
    • 1970-01-01
    • 2019-09-28
    • 1970-01-01
    相关资源
    最近更新 更多