Selenium 的 Remote Control 和 WebDriver 之间有什么区别?


Selenium RC 和 Selenium WebDriver 的区别如下:

功能Selenium RCSelenium WebDriver
服务器
需要服务器来触发测试执行。
无需服务器来触发测试执行。
面向对象
面向对象概念的支持较少。
大多数测试基于面向对象概念。
动态定位器
无法识别具有动态定位器的元素。
可以识别具有动态定位器的元素。
警报
不支持警报。
支持警报。
鼠标操作
不支持鼠标操作。
支持鼠标操作。
下拉菜单
不支持处理下拉菜单。
支持处理下拉菜单。
iPhone/Android
不支持 iPhone/Android 测试。
支持 iPhone/Android 测试
监听器
不支持监听器。
支持监听器。
性能
它不直接与浏览器通信。因此执行速度较慢。
执行速度快,因为它直接与浏览器通信。
架构
基于 JavaScript。
不基于 JavaScript。
XPath
提供绝对 XPath。
提供绝对和相对 XPath。
导航
不支持导航。
支持导航。
无头执行
不支持无头执行。
支持无头执行。
Selenium Core
服务器将 Selenium core(一个 JavaScript 程序)注入浏览器。Selenium Core 从 RC 服务器接收命令。Selenium Core 使用 JavaScript 执行命令。然后 JavaScript 命令向浏览器提供指令。最后,浏览器运行 Selenium Core 提供的指令,并将完整的执行状态发送到服务器。此最终执行结果是用户收到的输出。
没有 Selenium Core。直接与浏览器通信。浏览器运行测试生成的指令。
报告生成
能够生成 HTML 测试报告。
不能生成 HTML 测试报告。
API
API 复杂且冗余。
API 用户友好且简单。
社区支持
社区支持有限。
拥有庞大且广泛的社区支持。

Selenium RC 架构图:

图片链接:https://tutorialspoint.com/selenium/selenium_rc.htm

Selenium WebDriver 架构图:

图片链接:https://tutorialspoint.com/what−is−web−driver−in−selenium

更新于:2021年2月2日

226 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告