Erx*_*xin 5 browser selenium webdriver google-chrome-devtools selenium-webdriver
众所周知,WebDriver协议是为自动化测试目的而设计的。但是主要的浏览器也提供DevTool协议。在某些情况下,与WebDriver相比,DevTool协议可以实现更强大的交互和操作。
我的问题是为什么会有两种不同的协议,这两种协议之间的主要区别是什么?有没有可供选择的项目开发经验可供分享?
提前致谢!
参考:
开发工具
WebDriver:
par*_*par 10
WebDriver 协议和 DevTools 协议之间的主要区别在于 WebDriver 协议需要一个像浏览器驱动程序(例如:chrome-driver)这样的中间人,它是一个位于自动化脚本和浏览器之间的服务器,启用浏览器控制,但在 DevTools 协议的情况下,自动化脚本可以直接与在调试模式下运行的浏览器对话,使无头自动化非常简单。
而 Chrome 驱动内部使用 DevTools 协议来控制浏览器,所以如果我们使用 WebDriver 协议,它将反过来使用 DevTools 协议来控制浏览器。
如果跨浏览器测试对于新的测试工具来说很重要,那么 DevTools 协议现在可能不适合,因为还没有标准,而且大部分还在进行中。否则 DevTools 协议将是一个很好的选择,因为它提供了更多的控制,如拦截请求头、模拟网络等,并使无头自动化方式更容易。
WebDriver 为我们提供了一个精心设计的面向对象的 API,它可以为通过动态网页创建的现代高级 Web 应用程序提供更好的支持。简而言之,WebDriver 是一个远程控制接口,使我们能够内省和控制用户代理。它为我们提供了一个平台和语言中立的有线协议,并作为进程外程序远程指导Web 浏览器行为的一种方式。
该webdriver的规格被公布的浏览器测试工具和工作组作为编辑的草稿。编辑草稿并不意味着 W3C 成员的认可,并且可能随时被其他文档更新、替换或废弃。
该开发工具协议所使用的各种浏览器,JavaScript引擎和调试工具来:
一些具有内置调试协议的浏览器引擎和浏览器是:
一些公开通用协议的适配器:
在这里您可以找到适配器列表 RemoteDebug - Protocol Adaptors
1.注意DevTools Protocol为火狐是正在进行的工作
2.注意DevTools Protocol的边缘是正在进行的工作
| 归档时间: |
|
| 查看次数: |
1528 次 |
| 最近记录: |