沙滩星空的博客沙滩星空的博客

浏览器WebDriver协议和DevTools协议的区别

前言

测试发现,对于极个别的网页,谷歌浏览器可以正常获取到网页元素,使用基于 webdriver 协议的 selenium 工具也可以成功识别。 但是基于 devtoolschromedp 工具却不行。可能仅仅是工具的问题。
由此查了下 WebDriverDevTools 的区别.

https://www.wildberries.ru/catalog/72599837/detail.aspx
https://www.wildberries.ru/catalog/97286739/detail.aspx

WebDriver和DevTools

WebDriver 协议和 DevTools 协议之间的主要区别在于,WebDriver 协议需要像浏览器驱动程序这样的中间人(例如: chrome-driver),它是位于自动化脚本和浏览器之间的服务器,支持浏览器控制,但在 DevTools 协议的情况下自动化脚本可以直接与在 Debug模式下运行的浏览器对话,使 headless 自动化非常简单。

而 Chrome 驱动内部使用 DevTools 协议(protocol)来控制浏览器,所以如果我们使用 WebDriver 协议(protocol),它会反过来使用 Devtools 协议(protocol)来控制浏览器。

如果跨浏览器测试对于新的测试工具来说很重要,那么 DevTools 协议(protocol)现在可能不适合,因为还没有标准,而且大部分都在进行中。否则,DevTools 协议(protocol)将是一个不错的选择,因为它提供了更多控制,例如拦截请求 header 、模拟网络等,并使 headless 自动化方式更容易。


What is the difference between WebDriver and DevTool protocol https://stackoverflow.com/questions/50939116/what-is-the-difference-between-webdriver-and-devtool-protocol

未经允许不得转载:沙滩星空的博客 » 浏览器WebDriver协议和DevTools协议的区别

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址