2014-12-04 33 views
25

有什么区别?使用Angular项目的优点是什么?使用Nightwatch.js和量角器

Nightwatch.js VS Protractor

+2

这是我正在考虑问的东西(用一种不同的方式),但它并不真正适合SO格式,也不遵循规则。 – alecxe 2014-12-04 20:38:15

+3

你更喜欢哪里? QA StackExchange?我认为要求差异和优势足够客观。 – Atav32 2014-12-04 20:43:33

+2

我宁愿将这个问题的意思解释为:“使用nightwatch.js测试角度应用程序是否有任何缺点或好处?并且关注如果不使用量角器会损失什么 - 可能会使更合适 - 虽然我不确定这一点 - 一旦我得到[我的问题](http://stackoverflow.com/questions/26987238/npm-isntall-command)作为基于意见的封闭 - 仍然不是确定为什么。希望答案有帮助。 – alecxe 2014-12-04 20:58:19

回答

22

如果您是在AngularJS项目的工作,选择很简单 - Protractor

  • 它正在取得专门为角应用(虽然它可以用于非角度应用也是)
    • 支持角度特定的定位器策略(如by.model,by.repeater等)
    • 等待角页面加载时启动(同步)
  • 它正在积极维护和由谷歌开发者利用角度团队密切合作,主要是提高了 - 这意味着,量角器遵循角度释放周期和新的变化
+4

我也在考虑Nightwatch和量角器,不禁想知道它是否真的如此简单?测试中的Web应用程序的技术选择不应该与端到端测试无关吗?使用角度特定的定位器策略听起来像是将测试与代码紧密结合的切入点。 – KarlPurk 2016-01-14 09:20:38

+2

@KarlPurk我认为我们很快就会走上哲学的道路。量角器只是WebDriverJS的一个方便的包装,有几个非常整齐的Angular特性。这并不意味着您必须使用它们,或者您无法测试其他非角度应用程序。量角器仍然是一个通用的e2e工具,您可以使用它来测试任何Web应用程序的e2e。 – alecxe 2016-01-14 16:44:23

3

还有一些更多的差异没有列在最上面的答案。

对我来说最大的问题是,量角器不支持phantomJS(http://www.protractortest.org/#/browser-setup#setting-up-phantomjs)。我计划将自动化集成到CI系统中,但使用量角器时,我必须设置一个Windows VM来运行测试。

nightwatch的其他好处:

  • 声称是自动完成的。
  • 干净的控制台输出,你可以把 关闭任何人。
  • 测试报告会自动生成并保存到/reports目录。

量角器优点:

  • 的角度,具体定位符量角器支持是非常强大的,可以与创造稳定的测试帮助极大。
  • WaitForAngular也非常有帮助。
+0

为什么使用phantomjs来测试代码的端到端?另外请注意,许多人通过CI使用了量角器,并且不需要Windows VM。我在Linux上做了很多次。你只需要xvfb来运行它。 – 2018-01-12 16:47:03

+0

其实我不再使用phantomsjs了。 Chrome现在支持无头模式,phantomsjs的维护人员不再更新它。 – 2018-01-29 20:06:33

相关问题