Selenium RC
和 WebDriver
的基本区别是什么?
Selenium RC
和 WebDriver
的基本区别是什么?
Selenium-WebDriver使用浏览器本身原生的自动化支持直接调用浏览器。这些直接调用的方式以及它们所支持的特性取决于您使用的浏览器。每个“浏览器驱动程序”的相关信息将在本章后面提供。
对于熟悉Selenium-RC的人来说,这与您习惯的方式非常不同。Selenium-RC对于每个受支持的浏览器都是以相同的方式工作的。当浏览器加载时,它会“注入”javascript函数进入浏览器,然后使用它的javascript驱动浏览器内的AUT。WebDriver不使用这种技术。再次强调,它使用浏览器内置的自动化支持直接驱动浏览器。
根据您对Selenium-WebDriver的使用方式,您可能需要或不需要Selenium服务器。如果您仅使用WebDriver API,则不需要Selenium服务器。如果您的浏览器和测试都在同一台机器上运行,并且您的测试仅使用WebDriver API,则无需运行Selenium服务器;WebDriver将直接运行浏览器。
然而,使用Selenium-WebDriver和Selenium-Server也有一些原因。
- 您正在使用Selenium-Grid将测试分布在多台机器或虚拟机上。
- 您想要连接到具有特定浏览器版本的远程机器,该版本不在您当前的机器上。
- 您没有使用Java绑定(例如Python、C#或Ruby),并且希望使用HtmlUnit驱动程序。
Selenium RC 在网页加载时向浏览器注入 JavaScript 函数。
Selenium WebDriver 使用浏览器内置支持来驱动浏览器。
想要在上面的答案中添加一点内容,
由于Selenium RC将Java脚本代码注入浏览器中,因此浏览器的行为几乎相似。
但是对于WebDriver,调用是直接使用特定浏览器的本地支持,浏览器的行为更像用户交互。
WebDriver是一种工具,可使用不同的编程语言在不同的浏览器上测试Web应用程序。 现在,您可以制作强大的测试,因为WebDriver允许您在设计测试时使用自己选择的编程语言。 由于其简单的架构,WebDriver比Selenium RC更快。 WebDriver直接与浏览器通信,而Selenium RC需要RC服务器的帮助才能这样做。 WebDriver的API比Selenium RC更简洁。 WebDriver可以支持HtmlUnit,而Selenium RC则不能。 WebDriver唯一的缺点是: 它无法立即支持新的浏览器,但Selenium RC可以。 它没有内置命令来自动生成测试结果。
http://www.guru99.com/introduction-webdriver-comparison-selenium-rc.html
在这里我正在讨论Web Driver的特点,这些是RC的缺点: