3

嗨,我想要 selenium RC 和 webDriver 架构之间的差异。我阅读了很多功能差异,但没有找到任何架构差异。

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

提前致谢

4

3 回答 3

4

差异是相当大的。

Selenium RC 仅在其每个命令中使用 JavaScript。这意味着您编写的所有内容最终都会翻译成 Javascript 并在浏览器中运行。这种方法有几个优点和缺点 - 它应该在每个浏览器中以相同的方式工作,但仅限于“同源策略”和 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 可以做的事情。有时更多。偶尔有一个小错误。

于 2012-04-23T19:07:06.487 回答
0

虽然页面项目模型有很多优点,但其中一些值得一提的是:

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

  2. 您实际上可以为您的方法提供自定义名称。像上面一样,所以你不需要记住任何事情。

  3. 只需查看方法名称,您就可以全面了解该方法的功能。

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

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

  6. 良好的测试支持,因为一切都存储在一个地方。

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

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

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

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

于 2014-06-04T07:29:16.080 回答
0

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

您还可以找到差异。在http://qeworks.com/difference-between-selenium-rc-and-selenium-webdriver/下面的 RC 和 webdriver 之间

于 2014-01-13T16:07:36.563 回答