2012-04-23 192 views

回答

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也不是最可靠的东西),但是很多整体工具更强。它应该更快,它应该允许更复杂的工作,没有任何限制。

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

请注意,当硒RC已经oficially过时,该webdriver的目前正在迅速发展,它仍然从几个儿童患有的疾病,而不是在它的全部实力。这就是说,使用WebDriver,你可以做任何Selenium RC可以做的事情。有时更多。有偶然的小错误。

+0

非常感谢你Slanec..it是你provided.although我有一个问题所有的硒网站写着“请注意,虽然硒RC已经oficially弃用”,是什么意思究竟非常有用的信息?我知道这是一个愚蠢的问题要问,但我的组织仍在使用硒RC,并认为这可能是一个很大的努力,移动所有的硒rc sc – 2012-04-24 14:41:38

+0

这意味着它不再专门开发,所有酷的新功能和错误修复为WebDriver完成。 Selenium RC仍然包含在功能中,并且有一些小的补充,但大部分工作都是针对WebDriver的。如果您对Selenium RC感到满意,您仍然可以使用它,但通常建议您在WebDriver中开发新的测试。 – 2012-04-25 08:26:42

0

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

  1. 简单明了的页面类别与合理的方法名。

  2. 你实际上可以给你自定义名称的方法。像上面这样,你不需要记住任何事情。

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

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

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

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

  7. 轻松创建新测试。事实上,测试可以由不知道自动化工具特征的人员创建。

正如我在我的项目实际执行它所以肯定存在一些缺陷:

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

  2. 而这种抽象会导致页面类文件中的一些混乱。 所以你需要实现类似页面对象模型顶部的关键字,以充分利用优势。