E2E测试:因果报应+JQuery vs白内障

E2E testing: Karma+JQuery vs Protractor

本文关键字:vs 白内障 +JQuery 因果报应 测试 E2E      更新时间:2023-09-26

问题

就e2e测试而言,我们不能用KarmaJQuery做什么,而用Protractor做什么是可能的?

解释

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

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

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

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

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

从我的角度来看,KarmaJQuery(几乎(具备e2e测试所需的一切(如果我们不考虑Protractor中可用的浏览器窗口操作,例如可以设置窗口大小或位置(。

我显然遗漏了什么,任何澄清都会有所帮助。

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

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