37

Selenium RC和之间的基本区别是WebDriver什么?

4

5 回答 5

54

引用WebDriver 和 Selenium RC

Selenium-WebDriver 使用每个浏览器对自动化的原生支持直接调用浏览器。这些直接调用的方式以及它们支持的功能取决于您使用的浏览器。本章稍后将提供有关每个“浏览器驱动程序”的信息。

对于熟悉 Selenium-RC 的人来说,这与您习惯的完全不同。Selenium-RC 对于每个支持的浏览器都以相同的方式工作。它在浏览器加载时将 javascript 函数“注入”到浏览器中,然后使用其 javascript 在浏览器中驱动 AUT。WebDriver 不使用这种技术。同样,它使用浏览器内置的自动化支持直接驱动浏览器。

您可能需要也可能不需要 Selenium 服务器,具体取决于您打算如何使用 Selenium-WebDriver。如果您只使用 WebDriver API,则不需要 Selenium-Server。如果您的浏览器和测试都将在同一台机器上运行,并且您的测试只使用 WebDriver API,那么您不需要运行 Selenium-Server;WebDriver 将直接运行浏览器。

将 Selenium-Server 与 Selenium-WebDriver 一起使用是有一些原因的。

  • 您正在使用 Selenium-Grid 将测试分布在多台机器或虚拟机 (VM) 上。
  • 您想要连接到具有特定浏览器版本的远程计算机,该版本不在您当前的计算机上。
  • 您没有使用 Java 绑定(即 Python、C# 或 Ruby)并希望使用 HtmlUnit 驱动程序。
于 2012-07-18T07:20:45.683 回答
20

Selenium RC在加载网页时将 javascript 函数注入浏览器。

Selenium WebDriver使用浏览器的内置支持来驱动浏览器。

于 2014-02-22T19:24:49.630 回答
0

想在上面的答案中添加一点,

由于 selenium RC 将 java 脚本代码注入浏览器,浏览器的行为方式几乎相似。

但是对于 WebDriver,调用是直接使用特定浏览器的本机支持进行的,浏览器的行为更像是在用户交互的情况下

于 2015-07-16T06:37:15.190 回答
-1

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

于 2015-01-31T10:45:08.263 回答
-2

在这里,我正在讨论 Web 驱动程序功能,这些是 RC 中的缺点:

  1. 无需启动服务器即可运行程序
  2. Web 驱动程序默认最大化窗口或浏览器
  3. 隐藏命令历史窗口
  4. Web 驱动程序默认保持页面加载同步。如果是页面刷新我们必须使用thread.sleep()来维护;
  5. 我们可以借助“WebDriverBackedSelenium”在一个类下开发 RC 脚本和 Web 驱动程序脚本。
  6. 我们可以使用高级 Web 驱动程序概念从应用程序中获取信息。
  7. Web Driver 比 Selenium RC 更快,因为它的架构更简单。
  8. Web Driver 直接与浏览器对话,而 Selenium RC 需要 RC Server 的帮助才能做到这一点。
  9. Web Driver 的 API 比 Selenium RC 的更简洁。
  10. Web Driver 可以支持 Html Unit 而 Selenium RC 不能。
于 2015-03-17T05:16:32.500 回答