Selenium IDE、Selenium RC和Selenium WebDriver有什么区别?

4
Selenium IDE、Selenium RC和Selenium WebDriver有什么区别?在什么样的项目中可以使用它们?任何建议都将不胜感激。

好问题,您是否得到了答案。您需要按照 Selenium RC 的设置代码。 - iamsankalp89
1
请勿在 Stack Overflow 上提出寻求推荐书籍、工具、软件库、教程或其他外部资源的问题,因为它们容易吸引主观性答案和垃圾信息。相反,请描述问题以及已经尝试过的解决方案。 - JeffC
4个回答

6

Selenium IDE是Firefox或Chrome插件,允许您记录并运行使用Firefox运行的测试。在IDE中无法执行高级测试策略,例如重复多次执行单个操作,因为无法使用任何编程语言编写测试用例。

Selenium RC和WebDriver允许您选择自己感兴趣的编程语言编写测试用例。使用Selenium RC或WebDriver,您可以执行几乎任何手动操作。 RC和WebDriver之间的主要区别在于,RC使用远程控制将您的测试转换为浏览器本地代码,您的测试与远程控制交互,而远程控制与浏览器交互,而WebDriver直接与浏览器交互,无需通过远程服务器,因此执行速度更快。

我曾经在某个地方读到,RC将用某种编程语言编写的测试用例转换为JavaScript函数(可以控制浏览器),而WebDriver通过HTTP命令直接与浏览器通信。

Selenium RC已被弃用,人们现在使用WebDriver代替RC。


1

Selenium是一个开源项目,可以在这里详细阅读。

Selenium IDE是一个浏览器插件(目前仅适用于Chrome和Firefox)。如果想要脚本化网站交互,如快速演示错误重现,则很容易使用。问题是,它创建的测试非常脆弱,经常会出现故障。

Selenium WebDriver是一个编程包,可驱动浏览器本地运行。它旨在帮助开发与主要与网站前端交互的自动化。其他工具,如Nightwatch.js,将其用作核心。

两者之间存在差异:虽然Selenium IDE适用于制作这些探索性脚本,但Selenium WebDriver是一种制作真正的生产就绪系统测试的方法。


0
根据选择您的Selenium工具的官方文档:
许多人开始使用Selenium IDE。如果您还没有编程或脚本语言的经验,您可以使用Selenium IDE来熟悉Selenium命令。使用IDE,您可以快速创建简单的测试,有时甚至只需要几秒钟。
然而,我们不建议您使用Selenium IDE进行所有的测试自动化。要有效地使用Selenium,您需要使用支持的编程语言之一,结合Selenium 2Selenium 1来构建和运行您的测试。您选择哪个取决于您。
在撰写本文时,Selenium开发人员计划将Selenium-WebDriver API作为Selenium的未来方向。Selenium 1提供了向后兼容性。(...)。
(...)然而,对于那些第一次采用Selenium并因此从头开始构建新的测试套件的人来说,您可能希望选择Selenium 2,因为这是Selenium的一部分,将在未来继续得到支持。
另外从文档中可以注意到,Selenium 1也被称为Selenium RC或远程控制,而Selenium 2也被称为Selenium WebDriver

0

Selenium IDE 这可以通过浏览器(Chrome,Firefox)插件使用,我只是用来记录和播放测试用例。 Selenium 套件的基本项目之一。

优点: 不需要编码技能。

缺点: 只能测试 happy path 测试用例,因为不能使用任何循环来前后测试。

Selenium RC 服务器被创建为 HTTP 代理服务器,以欺骗浏览器和应用程序相信两者来自同一域,也称为 Selenium 1,在此处需要编码知识来编写测试用例。

优点: 处理了同源策略[通过创建的服务器]

缺点: 服务器解决方案本身就是一个问题,因为人们总是需要在本地机器上拥有该服务器才能通过 Selenium RC 进行测试。

Selenium WebDriver 这是上述问题的解决方案,因为它直接与操作系统级别的浏览器通信。没有任何服务器的需求,用户的代码可以直接与浏览器交互。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接