Protractor和Selenium有什么优缺点?

42

我目前正在开发一款涉及很多Angular js的WebApp... 我们最开始使用Selenium WebDriver编写脚本,从头开始运行也能正常工作... 但是有人建议我们改用Protractor代替Selenium WebDriver。在我看来,它们两者对我的工作都能胜任。唯一的区别就是我不需要显式等待网页加载...

除了这个区别,Protractor和Selenium WebDriver之间还有其他优缺点吗?


4
巨大的劣势在于Selenium听起来更好。 - naneri
12
我认为这个问题应该重新开放,因为它是一个合理的问题,有一个好的事实回答。 - Ralf de Kleine
6
已给予重新投票。这不是基于观点的问题。我们可以根据清晰的事实比较这些工具,而非我们的观点,这将有助于人们为其特定需求选择合适的工具。 - Mohsen Kamrani
1个回答

37

您好,我们可以讨论一下,但就Selenium和Protractor而言:

Selenium

  1. 即使是AngularJS网站也可以很好地工作,只需处理同步问题。如果您能够处理,则没有缺点。
  2. Selenium在自动化方面非常强大,即市场存在多年,发展非常成熟,其API几乎保持稳定。
  3. 事实上,它是在开源市场上进行浏览器自动化的事实标准工具。
  4. 您可以使用几乎每种流行语言来使用Selenium。

Protractor

  1. 被营销为基于Angular的自动化工具。但是当您查看其核心时,它是webdriver JS的包装器。因此,在浏览器自动化中不会揭示任何新的垂直领域。
  2. 是的,它在特定于Angular的定位策略的情况下具有某些优势。它提供了更多选项以与Angular指令一起使用(即特定于Angular的定位策略)。
  3. 仅适用于JavaScript客户端(语言)。因此,要使用它,您必须了解JavaScript。
  4. 虽然它基于webdriverJs,但在市场上还是新的。

因此,完全取决于您的项目需求和团队知识,您想使用哪个工具。不好说哪个工具比其他工具有什么优势。这两个工具都在这里帮助我们,使浏览器自动化无缝进行。希望这有所帮助。


Protractor是Selenium WebDriver的封装吗?我会得到Selenium WebDriver和Protractor自己的功能好处吗? - ChanGan
1
是的,Protractor是Webdriverjs的包装器,因此您可以在Protractor中获得Webdriverjs的每个功能以及Protractor自己的功能。 - eduliant
请访问以下链接,以更好地了解Protractor:http://angular.github.io/protractor/#/getting-started - eduliant

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接