【问题标题】:Why is there no "scroll down/up" functionality with Selenium Webdriver?为什么 Selenium Webdriver 没有“向下/向上滚动”功能?
【发布时间】:2019-03-29 04:57:14
【问题描述】:

我见过的每个滚动实现都需要执行 Javascript(例如scrollTopscrollTo),而不是 Selenium Webdriver 中的可用方法来执行此操作。由于 Webdriver 旨在执行用户可能会在浏览器中执行的相同交互,为什么在任何地方都找不到呢?

我知道使用 Webdriver 与 DOM 中的元素交互可以避免滚动元素,但是像 ReactVirtualized 这样的一些库被设计为仅呈现 可见 行,这使得自动化变得更加困难。

【问题讨论】:

    标签: selenium selenium-webdriver automated-tests selenium-chromedriver capybara


    【解决方案1】:

    您是直接使用 Capybara(因为您的问题已被标记)还是 selenium-webdriver?

    如果使用 Capybara,那么您需要最近添加的 scroll_to 方法 - https://www.rubydoc.info/gems/capybara/Capybara/Node/Element#scroll_to-instance_method

    如果您直接使用selenium-webdriver,那是因为长期以来,WebDriver 规范的一些作者一直坚持认为不需要滚动。这种坚持在上次 WebDriver 规范会议上发生了变化,但实际上还没有将滚动应该如何工作的细节添加到规范中。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-30
    • 1970-01-01
    • 2014-10-11
    • 2012-06-23
    • 1970-01-01
    相关资源
    最近更新 更多