本文概述
- 1.架构
- 2.速度
- 3.面向对象
- 4.测试移动应用
- 5.浏览器支持
查看Selenium RC和Selenium WebDriver之间的主要区别:
1.架构 Selenium RC的体系结构很复杂, 因为它使用中间RC Server与浏览器进行通信。 RC Server是在运行测试脚本之前首先安装的, 并充当Selenium命令和浏览器之间的中介。
在Selenium RC中执行测试脚本时, 将在内部执行以下操作。
- 服务器将一个称为Selenium Core的JavaScript程序注入浏览器。
- 随后, Selenium Core将开始从RC服务器接收指令(Selenium命令)。
- 收到所有指令后, Selenium Core会将它们作为JavaScript命令执行。
- 这些JavaScript命令充当浏览器的指令。
- 浏览器将执行Selenium Core提供的所有指令, 并将整体摘要返回给服务器。此总体摘要将作为最终结果显示在用户屏幕上。
文章图片
与Selenium RC相比, Selenium WebDriver的体系结构更简单。
【Selenium WebDriver与Selenium RC详细介绍】浏览器直接从OS(操作系统)级别进行控制。在WebDriver上运行测试脚本的基本要求是:
- 具有任何受支持的编程语言(如Java, C#等)的IDE(集成开发环境)。
- 浏览器执行测试脚本生成的指令。
文章图片
2.速度 Selenium WebDriver的性能比Selenium RC快, 因为它无需使用任何外部代理服务器即可直接与浏览器进行交互。另一方面, Selenium RC使用中间RC Server与浏览器进行通信。
与WebDriver相比, 在Selenium RC中执行测试脚本要花费更多的时间, 因为它使用JavaScript命令作为浏览器的指令。
3.面向对象 Selenium WebDriver是纯面向对象的API, 而Selenium RC则是较少面向对象的API。
WebDriver完全基于面向对象的编程语言, 例如Java, C#等。
4.测试移动应用 Selenium WebDriver支持适用于iOS, Windows Mobile和Android等移动应用程序的OS(操作系统)。另一方面, Selenium RC不支持移动应用程序的测试。
5.浏览器支持 Selenium WebDriver还支持无头HTMLUnit浏览器(Invisible Browser)。
注意:HTMLUnit是一种不可见的浏览器, 它有助于加快测试的执行速度, 因为它不需要等待页面元素加载的时间。 Selenium RC不支持无头HTMLUnit浏览器, 因为它需要使用真正的浏览器。
推荐阅读
- Selenium WebDriver-滚动网页示例
- Selenium WebDriver-在IE浏览器上运行测试
- Selenium WebDriver-Firefox浏览器运行测试-Gecko驱动程序
- Selenium和Python测试教程详细图解
- Selenium WebDriver-在Chrome浏览器上运行测试(图解)
- Selenium WebDriver安装详细步骤图解
- Selenium WebDriver-导航命令图解
- Selenium WebDriver-定位策略
- Selenium WebDriver处理单选按钮