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