【问题标题】:Get list of Window in Selenium (NodeJS)获取 Selenium 中的窗口列表(NodeJS)
【发布时间】:2022-01-09 12:20:23
【问题描述】:

我最初认为我可以通过使用来检索 Chrome Windows

var windows = await driver.getAllWindowHandles();

问题在于它实际上并没有获得 Chrome“窗口”而是标签。 Selenium 中是否有真正的“视觉”Chrome 窗口的概念?我想知道一个选项卡是否来自一个特定的窗口,以及一个窗口中有多少个选项卡。该文档具有误导性,尤其是 getAllWindowHandles,这意味着它与 Window 有关。

【问题讨论】:

    标签: node.js selenium selenium-webdriver window-handles


    【解决方案1】:

    TabWindow 之间基本上没有显着差异。唯一的区别是它是如何呈现给用户的。

    在核心,每个 Tab 以及每个 Window 都可以有一个完全独立的 DOM Tree 和它自己的 JavaScript 环境。

    获取窗口句柄

    根据specs

    窗口句柄的返回顺序是任意的。

    远程结束步骤是:

    • 让句柄是一个 JSON 列表。

    • 对于远程端的每个顶级浏览上下文,将关联的窗口句柄推送到句柄上。

    • 使用数据句柄返回成功。


    结论

    WebDriver 的角度来看,TabWindow 的处理方式相同。

    【讨论】:

    • 感谢您提供详细信息,是的,这是我在广泛查看所有可能的文档后的想法……我真的很惊讶没有人想到有一个 Window 的概念,而它绝对可以在浏览器中使用从永远。真的很惊喜
    • 很高兴能为您提供帮助。请accept answer 点击我的answer 旁边的空心刻度线,该刻度线就在 votedown 箭头下方,这样刻度线就会转动绿色.
    猜你喜欢
    • 2019-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-21
    • 2015-02-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多