Selenium RC架构与Selenium WebDriver架构的区别

时间:2012-04-23 17:52:20

标签: selenium selenium-webdriver architecture selenium-rc

您好我希望selenium RC和webDriver的架构之间存在差异。 我阅读了许多功能差异,但没有找到任何有关架构差异的内容。

如果有人可以发送/发布真正适用的差异链接。

提前致谢

3 个答案:

答案 0 :(得分:4)

差异非常大。

Selenium RC仅为每个命令使用JavaScript。这意味着您编写的所有内容最终都会转换为Javascript并在浏览器中运行。这种方法有几个优点和缺点 - 它应该在每个浏览器中以相同的方式工作,但仅限于"same origin policy"和JavaScript限制。

http://seleniumhq.org/docs/05_selenium_rc.html#how-selenium-rc-works

WebDriver实际上使用每个浏览器自己的原生API来处理它们。这意味着它有时需要浏览器开发团队的直接帮助,有时在新的浏览器版本发布时失败,有时在不同的浏览器上表现略有不同(但是嘿,在IE上,js也不是最可靠的东西),但是很多整体工具更强大。它应该更快,它应该允许更复杂的工作,没有任何js限制。

http://seleniumhq.org/docs/03_webdriver.html#how-does-webdriver-drive-the-browser-compared-to-selenium-rc

请注意,虽然Selenium RC已经被弃用,但WebDriver现在正在快速发展,它仍然患有几种儿童疾病,并且还没有完全发挥作用。也就是说,使用WebDriver,你可以做任何Selenium RC可以做的事情。有时更多。偶尔有一个小错误。

答案 1 :(得分:0)

在这里你可以使用Selenium Webdriver Architecture http://qeworks.com/selenium-webdriver-architecture/

你也可以找到差异。 RC和webdriver之间 http://qeworks.com/difference-between-selenium-rc-and-selenium-webdriver/

答案 2 :(得分:0)

虽然Page Project Model有很多优点,但其中一些值得一提的是:

  1. 具有合理方法名称的简单明了的页面类。

  2. 您实际上可以为自己的方法提供自定义名称。如上所述,您无需记住任何事情。

  3. 只需查看方法名称,即可了解该方法的功能。

  4. 使测试更具可读性。与上面的selenium命令相比,您需要在测试脚本中添加所有命令。在页面对象模型中,您需要放置方法名称。您根据对应用程序的理解创建的方法,因此这些方法名称更易读且易于理解。

  5. 留[干] 页面对象模型相信不要重复自己的原则。

  6. 对测试的良好支持,因为所有内容都存储在一个地方。

  7. 轻松创建新测试。实际上,测试可以由不了解自动化工具功能的人创建。

  8. 因为我已经在我的项目中实际实现了它,所以肯定存在一些缺陷:

    1. 所有定位器都应保存在页面类文件中。

    2. 这种抽象导致页面类文件中出现一些混乱。 因此,您需要在页面对象模型之上实现关键字驱动等功能,以充分发挥优势。