【发布时间】:2015-12-26 18:18:31
【问题描述】:
问题
在 e2e 测试方面,Karma 和 JQuery 不能做什么,而Protractor 可以?
说明
我目前正在为我的 JavaScript 应用程序构建一个测试框架。
正如许多人所建议的那样,我将Karma 用于单元测试,将Protractor 用于E2E 测试。
我知道单元测试和 e2e 测试之间的概念差异,但是,在 JavaScript 的上下文中,我不清楚为什么我们需要像 Protractor 这样的框架。
据我所知,e2e 测试的目的是将应用程序用作简单最终用户。为此,Protractor 之类的工具使用webdriver 与浏览器交互,让我们模拟一些用户事件(点击元素、填写表单...)。
问题是,我们为什么不能简单地使用Karma 和JQuery 来做到这一点?
确实,JQuery 提供了许多与 DOM 元素交互的方法(触发事件、获取/设置元素的属性、为输入设置值……)。此外,它提供了选择器,使得DOM元素的选择变得非常容易。
在我看来,Karma 和 JQuery (几乎)拥有 e2e 测试所需的一切(如果我们不注意 Protractor 中可用的浏览器窗口操作,例如可以设置窗口大小或位置)。
我显然遗漏了一些东西,任何澄清都会有所帮助。
【问题讨论】:
标签: javascript unit-testing protractor karma-runner e2e-testing