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

时至今日,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% 的组织则相信它是有益的!
  • Jasmine 和 Mocha 是最流行的 JavaScript 单元测试框架,Jasmine 主要配合 AngularJS 进行单元测试,而 Mocha 则与 ReactJS 配合使用。

ReactJS Vs. AngularJS 的使用占比

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

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

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

前端开发框架选型

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

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

大多数参与者表示,一般情况下,他们发现自动化测试和 JavaScript 单元测试都会特别的高效。我们认为,其中的一个主要原因是,高耦合的 JavaScript 代码所致。而这也解释了 JavaScript 单元测试框架,在市场中自然增长的原因。

你执行过 JavaScript 单元测试吗?

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

组织规模
单元测试覆盖率

1-10

56%

10-100

69%

100+

81%

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

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

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

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

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

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

来源:51CTO

时间: 2024-09-13 13:42:03

前端开发自动化单元测试趋势的相关文章

2017年前端开发工具趋势

本文来源于全球的5254份前端工具使用的调查报告,期望通过本文能够帮助大家更好的了解最新的前端开发工具趋势. 受访者组成 83%的受访者具有两年以上的前端技术经验,只有5%的受访者不到一年: CSS 开发者中有63%为高级开发者和专家: 尽管CSS被认为只是属性-参数值对的简单集合,但是CSS却是很难掌握的.CSS3引入了许多的新特性,要想完全的掌握CSS变得越来越困难. 如果你想学习前端可以来这个群,首先是二九一,中间是八五一,最后是一八九,里面可以学习交流也有资料可以下载. CSS预处理器

《测试驱动的嵌入式C语言开发》——2.3节CppUTest:一个用C++实现的自动化单元测试框架

2.3 CppUTest:一个用C++实现的自动化单元测试框架现在你已经见过了Unity,接下来我会快速介绍一下CppUTest,同时也是我更倾向于使用的对C和C++代码进行单元测试的自动化测试框架.事实上,不仅因为它是一个功能全面的测试框架,同时也因为我是CppUTest的作者之一.本书开始的几个例子会用Unity,在第8章之后会使用CppUTest.CppUTest是为了支持在多种操作系统上开发嵌入式软件而特别设计的.CppUTest的宏被设计成不需要了解C++也可以写测试用例.这使得C程序

敏捷开发离不开自动化单元测试

概述:敏捷项目预想测试计划,测试创建和测试执行在项目生命周期中贯穿始终.因此单元测试的需要,尤其是自动化单元测试不可忽略,而且应当作为整个团队的关键责任-而不仅仅是软件开发人员的责任.敏捷方法是建立在短期.可迭代并且可增长发布版本,可以对变更有持续反馈和灵活应对的基础上的管理软件开发的方法.起源于快速演变的商业环境,由于需要产品更快地完成改善和修改,敏捷方法推动了能够贯穿适用于整个应用程序管理流程的组织结构的速度质量,应对能力和适应性.这篇文章阐述了为什么敏捷开发没有单元测试不能有效地实施-尤其

《测试驱动的嵌入式C语言开发》——2.1节什么是自动化单元测试框架

2.1 什么是自动化单元测试框架自动化单元测试框架就是一个软件包,它能让程序员表达产品代码应该有什么样的行为.自动化单元测试框架的工作就是要提供以下能力: 用于表述测试用例的通用语言: 用于表述期望结果的通用语言: 能够使用产品代码所用编程语言的功能: 能把所有的工程.系统或子系统中的单元测试用例收集到一起: 一个能运行全部或者部分测试用例的机制: 对于测试套件的成功和失败给出明确的报告: 对于失败的测试给出详细的报告.本书中用到的两个单元测试框架在测试嵌入式C代码以及开源代码中都很流行,并且它

如何打造一个令人愉悦的前端开发环境(一)

文章来源 最近几年,前端发展越来越迅速,各种萌新加入了前端这个大家庭,大有赶IOS.超Android的趋势呀!同时,萌新们提出了各种前端工作问题,除了最基础的html.css.js三板斧之外,最让人头疼的应该是关于环境的配置问题,所以以环境作为切入点,开始一系列的前端开发环境配置文章. 主要会涉及到打包.构建.编程工具.debug等等前端环境,以及前后端分离.Nodejs中间层使用伸展面. 工欲善其事必先利其器 以编程工具而言WebStorm.sublime.Atom.VS Code.Brack

自动化单元测试实践之路

自动化单元测试并不是什么新鲜事物,它应该是团队持之以恒的事情,可能有很多团队知道如何去做,但是还做得不够好:还有不少团队不知道如何去做,甚至有一些旧系统还不敢去重构,还在坚持着Java中的main方法调用的方式来执行,在漫长等待构建结果. 本文主要讲基于Java项目如何做自动化单元测试的实践. 1 是否值得 关于单元测试的意义,详细参考stackoverflow这篇文章: http://stackoverflow.com/questions/67299/is-unit-testing-worth

浅谈JavaScript前端开发的MVC结构与MVVM结构_javascript类库

MVCModel–View–Controller (MVC)是一种把信息展现逻辑和用户交互分离的计算机用户界面开发模式:Model包含应用的数据和业务逻辑:Controller负责把用户的输入,转换为命令传递给Model和View;这是维基百科的解释: 这种模式最初是由Trygve Reenskaug在使用Smalltalk-80(1979)工作时设计的,刚开始叫做Model-View-Controller-Editor:后来通过<Design Patterns: Elements of Reu

淘宝前端工程师:国内WEB前端开发十日谈

中介交易 SEO诊断 淘宝客 云主机 技术大厅 一直想写这篇"十日谈",聊聊我对Web前端开发的体会,顺便解答下周围不少人的困惑和迷惘.我不打算聊太多技术,我想,通过技术的历练,得到的反思应当更重要. 我一直认为自己是"初级"前端开发工程师,一方面我入道尚浅,只有短短几年,另一方面我自知对技术的钻研并不深入,可能是由于环境的原因,当然最重要的是,我幸运的参与到互联网崛起的浪潮之巅.时势造就了一批技能薄弱但备受追捧的"弄潮者",这在很大程度上影响我

设计理论:制作网页前端开发的文档

前端开发的文档相信大多数情况下都没有后端的服务描述详细,而大多数测试也仅仅在黑盒测试,所以很多情况下对这片文档的描述都廖廖无几. 前端文档缺失的原因 前端开发的文档相信大多数情况下都没有后端的服务描述详细,而大多数测试也仅仅在黑盒测试,所以很多情况下对这片文档的描述都廖廖无几. * 前端开发的代码分散--没有规范化,没有很好的设计,大多数人仍以业务为主的开发方式.* 测试人员对前端仍然处于黑盒测试,有没有文档都不影响到他们的测试进程.* 一旦业务定型,用传统方式的文档模式,很难复制到前端开发来.