javascript - 无法使用机器人框架向下滚动网页

标签 javascript python-2.7 selenium robotframework

我正在使用 Selenium 2 和 Robot Framework 来自动化我们的应用程序。我已使用以下 JavaScript 代码向下滚动页面,但无法滚动。

我想在向下滚动后在文本框中输入文本,但我收到异常:

Element not visible

默认情况下文本框在屏幕上是部分可见的,如果我们手动向下滚动而不是它完全可见,但是selenium机器人框架无法向下滚动。

我试过:

Execute JavaScript    window.scrollTo(0,200)

Execute JavaScript    window.scrollBy(0,200)

Execute JavaScript    window.scrollTo(0, document.body.scrollHeight)

我该如何解决这个问题?

最佳答案

您的滚动代码看起来没问题。但是,我不认为滚动是你的问题。元素可见性是可以的,即使它从屏幕上滚开。例如,试试这个代码。至少在 Chrome 页面上向上滚动 Input Text 关键字

*** Settings ***
Library         Selenium2Library

*** Test Cases ***
Scroll
    Open Browser   http://www.stackoverflow.com/    Chrome
    Execute JavaScript    window.scrollTo(0, document.body.scrollHeight)
    Input Text    //*[@id="search"]/input    robot framework
    Sleep    3
    Close All Browsers

我认为您的编辑框定位器可能不正确。

关于javascript - 无法使用机器人框架向下滚动网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31947891/

相关文章:

javascript - 如何通过word-js替换大量内容控件中的文本?

javascript - React Native 渲染相同的路线

excel - 在 python 2.7 中更新 excel 文件

python - 修改数据框中的多行

python - 如何在 Python 中读取压缩文件夹中的文本文件

c# - Selenium C#超时异常

java - 出现异常 : Unable to locate element

javascript - 为什么这个 JS 会触发部分呈现在一页上而不是另一页上的表单?

javascript - 根据值向表的每个 td 添加 title 属性

python - WebDriverException : Message: 'Can not connect to the ChromeDriver' . utils.is_connectable(self.port) 错误: