WebDriver BiDi 日志功能
这些功能与日志记录相关。因为“日志记录”可以指代许多不同的事情,所以这些方法通过“script”命名空间提供。
双向意味着通信同时发生在两个方向。传统的 WebDriver 模型涉及严格的请求/响应命令,这只允许通信在任何给定时间在一个方向发生。在大多数情况下,这是您想要的;它确保浏览器按照正确的顺序执行预期的操作,但是通过异步交互可以完成许多有趣的事情。
此功能目前以有限的方式通过 [Chrome DevTools Protocol] (CDP) 提供,但为了解决其一些缺点,Selenium 团队与主要的浏览器供应商合作创建了新的 WebDriver BiDi 协议。该规范旨在创建一个稳定、跨浏览器的 API,该 API 利用双向通信来增强浏览器自动化和测试功能,包括通过 WebSockets 将用户代理的流式事件传输到控制软件。用户将能够监听和记录或操作在 Selenium 会话期间发生的事件。
为了使用 WebDriver BiDi,在浏览器选项中设置该功能将启用所需的功能
options.setCapability("webSocketUrl", true);
options.enable_bidi = True
UseWebSocketUrl = true,
options.web_socket_url = true
Options().enableBidi();
options.setCapability("webSocketUrl", true);
这将启用用于双向通信的 WebSocket 连接,从而释放 WebDriver BiDi 协议的全部潜力。
请注意,Selenium 正在将其整个实现从 WebDriver Classic 更新为 WebDriver BiDi(同时尽可能保持向后兼容性),但本文档的这一部分侧重于双向通信允许的新功能。最终用户可以在代码中访问低级别的 BiDi 域,但目标是提供直接的现实用例的高级 API。因此,低级组件将不会被记录,本节将仅关注我们鼓励用户利用的易于使用的功能。
如果您希望看到其他功能,请提出功能请求。
这些功能与日志记录相关。因为“日志记录”可以指代许多不同的事情,所以这些方法通过“script”命名空间提供。
这些功能与网络相关,并通过“network”命名空间提供。
这些功能与脚本相关,并通过“script”命名空间提供。
在 Selenium 中使用 Chrome DevTools 协议的示例。在 WebDriver BiDi 实现之前,CDP 支持是临时的。
在 Selenium 中使用 Chrome DevTools 协议的示例。在 WebDriver BiDi 实现之前,CDP 支持是临时的。
了解更多或查看完整的赞助商列表。