前端开发自动化单元测试趋势

前端开发自动化单元测试趋势

时至今日,Web 前端已经发生了巨大的演变,而单页应用程序也成为了标准。众多应用程序完成了从 PC 到移动端的华丽转身,而那些基于 JavaScript 的框架变得更受开发者们欢迎。

TestProject 进行了一项调查,以便了解目前前端开发技术和自动化单元测试的趋势。调查的结果揭示了软件专业人士对热门框架,以及工具的偏好程度。我们从 957 个相关人士的调查问卷中,得出了这个让人印象深刻的结果!

调查方式

  • 向 2,735 名相关者发出在线问卷调查,其中 957 人回答了问卷中的问题。
  • 数据收集日期:2016.7.25—2016.8.20
  • 目标群体:Web 前端开发人员,全栈开发人员,软件开发团队领导,Q / A 自动化团队领导,测试自动化工程师和管理人员。
  • 组织规模:1-10,10-60,60-100,100+

见解

  • 目前, Web 开发技术框架选型为两种的占 80% 。这种戏剧性的变化持续了近 6 年。
  • 自 2013 年 5 月推出以来,ReactJS 在过去三年中已成为了 Web 开发领域的中坚力量。
  • 基于 JavaScript 的单元测试被证明是一种高效的测试方法,其中 71% 的组织执行了 JavaScript 单元测试,而 84% 的组织则相信它是有益的!
  • JasmineMocha 是最流行的 JavaScript 单元测试框架,Jasmine 主要配合 AngularJS 进行单元测试,而 Mocha 则与 ReactJS 配合使用。

ReactJS Vs. AngularJS 的使用占比

AngularJS 涵盖所有版本:AngularJS1.XX / 2.XX

对于 ReactsJSAngularJS 之间的比较(第一个是库,第二个是框架),貌似听起来有些奇怪。但是,如果仅针对开发方式来说,它确实做到了非比寻常。

AngularJS 基于紧耦合的架构,而 ReactJS 则提供了选择自由性的可能。许多参与者表示,他们使用 AngularJS 1.XX 用于老产品的研发,而新一代的产品则会选择 ReactJS 。基于这个反馈,近两年来 ReactJS 的使用已呈现出指数级的增长态势。同时,我们期望在 2017 年,它会成为你的首选。

前端开发框架选型

虽然这并不让人感到惊讶,但有趣的是,两种技术框架选型主导着整个前端开发市场。此外,在近期开发的网站中,约 80% 的网站正在使用它们之一:AngularJS / ReactJS。

你认为前端单元测试是一个有效的方法吗?


大多数参与者表示,一般情况下,他们发现

自动化测试

和 JavaScript 单元测试都会特别的高效。我们认为,其中的一个主要原因是,高耦合的 JavaScript 代码所致。而这也解释了 JavaScript 单元测试框架,在市场中自然增长的原因。

你执行过 JavaScript 单元测试吗?


调查中的另一个有趣的见解是,在大型组织中 JavaScript 单元测试更受欢迎。其中一个原因可能是,由于大型组织需要处理大规模的产品,以及频繁的功能迭代吧。这种持续的迭代方式,迫使他们进行自动化测试的投入。更具体地说,单元测试有助于增强产品的整体质量。

热门的 JavaScript 自动化单元测试框架

排名前三位的单元测试框架分别为 Mocha,Jasmine 和 Karma。 以下是参与我们调查的用户反馈:

热门自动化单元测试框架 AngularJS / ReactJS / Vanila JavaScript

事实上,它们各自有着不同的优势,没有明确的最好之说。而这些工具的初衷也只是为了用于 AngularJS(例如

Protractor

Karma

),但最终也广泛应用于 ReactJS 。

最流行的 JavaScript 自动化单元测试工具组合是:

  • Jasmine 与 Protractor (72.4%)
  • Jasmine 与 Karma (67.7%)
  • Jasmine 与 Jest (58.3%)
  • Karma 与 Protractor (58.6%)

想要更深入了解,为什么 Jasmine 和 Karma 是一对优秀的 JavaScript 单元测试组合。继续在这里阅读。

如果觉得文章不错,不妨点个赞。

注:

  1. 由于译者水平有限,若翻译不当之处,还请大家多多指正,我会尽快修改;
  2. 本文版权归原作者所有。如需转载译文,烦请注明出处,谢谢!

英文原文:Front End Development & Unit Test Automation Trends!
作者:MARK KARDASHOV
译者:IT程序狮
译文源自:zhuanlan.zhihu.com/p/24

编辑于 2017-01-08 09:43