【问题标题】:E2E testing: Karma+JQuery vs ProtractorE2E 测试:Karma+JQuery vs Protractor
【发布时间】:2015-12-26 18:18:31
【问题描述】:

问题

在 e2e 测试方面,KarmaJQuery 不能做什么,而Protractor 可以?

说明

我目前正在为我的 JavaScript 应用程序构建一个测试框架。 正如许多人所建议的那样,我将Karma 用于单元测试,将Protractor 用于E2E 测试

我知道单元测试和 e2e 测试之间的概念差异,但是,在 JavaScript 的上下文中,我不清楚为什么我们需要像 Protractor 这样的框架。

据我所知,e2e 测试的目的是将应用程序用作简单最终用户。为此,Protractor 之类的工具使用webdriver 与浏览器交互,让我们模拟一些用户事件(点击元素、填写表单...)。

问题是,我们为什么不能简单地使用KarmaJQuery 来做到这一点?

确实,JQuery 提供了许多与 DOM 元素交互的方法(触发事件、获取/设置元素的属性、为输入设置值……)。此外,它提供了选择器,使得DOM元素的选择变得非常容易。

在我看来,KarmaJQuery (几乎)拥有 e2e 测试所需的一切(如果我们不注意 Protractor 中可用的浏览器窗口操作,例如可以设置窗口大小或位置)。

我显然遗漏了一些东西,任何澄清都会有所帮助。

【问题讨论】:

    标签: javascript unit-testing protractor karma-runner e2e-testing


    【解决方案1】:

    按照您的方式使用 Jquery 和 Karma,是一种行为驱动的测试,而不是端到端的测试。

    使用 Jquery 和 Karma,您无法像在量角器中那样检测跨浏览器问题。另一方面,Protractor 像最终用户一样运行您的测试。它实际上会打开您想要的浏览器并在该浏览器中测试您的应用程序。

    【讨论】:

      猜你喜欢
      • 2018-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-04
      • 2015-04-11
      相关资源
      最近更新 更多