首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >WebDriver和DevTool协议有什么区别?

WebDriver和DevTool协议有什么区别?
EN

Stack Overflow用户
提问于 2018-06-20 01:55:18
回答 1查看 6.3K关注 0票数 13

众所周知,WebDriver协议是为自动化测试目的而设计的。但是主要的浏览器也提供DevTool协议。在某些情况下,DevTool协议可以实现比WebDriver更强大的交互和操作。

我的问题是,为什么有两个不同的协议,这两个协议的主要区别是什么?是否有任何可供分享的项目开发选择经验?

提前感谢!

参考资料:

  • DevTools
代码语言:javascript
运行
复制
- [https://learn.microsoft.com/en-us/microsoft-edge/devtools-protocol/](https://learn.microsoft.com/en-us/microsoft-edge/devtools-protocol/)
- [https://chromedevtools.github.io/devtools-protocol/](https://chromedevtools.github.io/devtools-protocol/)
- [https://searchfox.org/mozillacentral/source/devtools/docs/backend/protocol.md](https://searchfox.org/mozillacentral/source/devtools/docs/backend/protocol.md)

  • WebDriver:
代码语言:javascript
运行
复制
- [https://www.seleniumhq.org/projects/webdriver/](https://www.seleniumhq.org/projects/webdriver/) 
- [https://www.w3.org/TR/webdriver1/](https://www.w3.org/TR/webdriver1/)
- [https://learn.microsoft.com/en-us/microsoft-edge/webdriver](https://learn.microsoft.com/en-us/microsoft-edge/webdriver) 
- [https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver](https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver) 
- [https://sites.google.com/a/chromium.org/chromedriver/downloads](https://sites.google.com/a/chromium.org/chromedriver/downloads)

EN

回答 1

Stack Overflow用户

发布于 2018-11-14 06:44:38

WebDriver协议与DevTools协议的主要区别在于WebDriver协议需要一个中间层的浏览器驱动程序(如:铬驱动器),它是介于自动化脚本和浏览器支持浏览器控制之间的服务器,但在DevTools协议的情况下,自动化脚本可以直接与运行在调试模式下的浏览器进行对话,从而使无头自动化更加直观。

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

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

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50939116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档