前端開發(fā)自動(dòng)化單元測(cè)試趨勢(shì)
時(shí)至今日,Web 前端已經(jīng)發(fā)生了巨大的演變,而單頁應(yīng)用程序也成為了標(biāo)準(zhǔn)。眾多應(yīng)用程序完成了從 PC 到移動(dòng)端的華麗轉(zhuǎn)身,而那些基于 JavaScript 的框架變得更受開發(fā)者們歡迎。
TestProject 進(jìn)行了一項(xiàng)調(diào)查,以便了解目前前端開發(fā)技術(shù)和自動(dòng)化單元測(cè)試的趨勢(shì)。調(diào)查的結(jié)果揭示了軟件專業(yè)人士對(duì)熱門框架,以及工具的偏好程度。我們從 957 個(gè)相關(guān)人士的調(diào)查問卷中,得出了這個(gè)讓人印象深刻的結(jié)果!
調(diào)查方式
- 向 2,735 名相關(guān)者發(fā)出在線問卷調(diào)查,其中 957 人回答了問卷中的問題。
- 數(shù)據(jù)收集日期:2016.7.25—2016.8.20
- 目標(biāo)群體:Web 前端開發(fā)人員,全棧開發(fā)人員,軟件開發(fā)團(tuán)隊(duì)領(lǐng)導(dǎo),Q / A 自動(dòng)化團(tuán)隊(duì)領(lǐng)導(dǎo),測(cè)試自動(dòng)化工程師和管理人員。
- 組織規(guī)模:1-10,10-60,60-100,100+
見解
- 目前, Web 開發(fā)技術(shù)框架選型為兩種的占 80% 。這種戲劇性的變化持續(xù)了近 6 年。
- 自 2013 年 5 月推出以來,ReactJS 在過去三年中已成為了 Web 開發(fā)領(lǐng)域的中堅(jiān)力量。
- 基于 JavaScript 的單元測(cè)試被證明是一種高效的測(cè)試方法,其中 71% 的組織執(zhí)行了 JavaScript 單元測(cè)試,而 84% 的組織則相信它是有益的!
- Jasmine 和 Mocha 是最流行的 JavaScript 單元測(cè)試框架,Jasmine 主要配合 AngularJS 進(jìn)行單元測(cè)試,而 Mocha 則與 ReactJS 配合使用。
ReactJS Vs. AngularJS 的使用占比
對(duì)于 ReactsJS 和 AngularJS 之間的比較(第一個(gè)是庫,第二個(gè)是框架),貌似聽起來有些奇怪。但是,如果僅針對(duì)開發(fā)方式來說,它確實(shí)做到了非比尋常。
AngularJS 基于緊耦合的架構(gòu),而 ReactJS 則提供了選擇自由性的可能。許多參與者表示,他們使用 AngularJS 1.XX 用于老產(chǎn)品的研發(fā),而新一代的產(chǎn)品則會(huì)選擇 ReactJS ?;谶@個(gè)反饋,近兩年來 ReactJS 的使用已呈現(xiàn)出指數(shù)級(jí)的增長態(tài)勢(shì)。同時(shí),我們期望在 2017 年,它會(huì)成為你的首選。
前端開發(fā)框架選型
雖然這并不讓人感到驚訝,但有趣的是,兩種技術(shù)框架選型主導(dǎo)著整個(gè)前端開發(fā)市場(chǎng)。此外,在近期開發(fā)的網(wǎng)站中,約 80% 的網(wǎng)站正在使用它們之一:AngularJS / ReactJS。
你認(rèn)為前端單元測(cè)試是一個(gè)有效的方法嗎?
大多數(shù)參與者表示,一般情況下,他們發(fā)現(xiàn)自動(dòng)化測(cè)試和 JavaScript 單元測(cè)試都會(huì)特別的高效。我們認(rèn)為,其中的一個(gè)主要原因是,高耦合的 JavaScript 代碼所致。而這也解釋了 JavaScript 單元測(cè)試框架,在市場(chǎng)中自然增長的原因。
你執(zhí)行過 JavaScript 單元測(cè)試嗎?
調(diào)查中的另一個(gè)有趣的見解是,在大型組織中 JavaScript 單元測(cè)試更受歡迎。其中一個(gè)原因可能是,由于大型組織需要處理大規(guī)模的產(chǎn)品,以及頻繁的功能迭代吧。這種持續(xù)的迭代方式,迫使他們進(jìn)行自動(dòng)化測(cè)試的投入。更具體地說,單元測(cè)試有助于增強(qiáng)產(chǎn)品的整體質(zhì)量。
組織規(guī)模 |
單元測(cè)試覆蓋率
|
---|---|
1-10
|
56%
|
10-100
|
69%
|
100+
|
81%
|
熱門的 JavaScript 自動(dòng)化單元測(cè)試框架
排名前三位的單元測(cè)試框架分別為 Mocha,Jasmine 和 Karma。 以下是參與我們調(diào)查的用戶反饋:
熱門自動(dòng)化單元測(cè)試框架 AngularJS / ReactJS / Vanila JavaScript
事實(shí)上,它們各自有著不同的優(yōu)勢(shì),沒有明確的最好之說。而這些工具的初衷也只是為了用于 AngularJS(例如 Protractor 和 Karma),但最終也廣泛應(yīng)用于 ReactJS 。
最流行的 JavaScript 自動(dòng)化單元測(cè)試工具組合是:
- Jasmine 與 Protractor (72.4%)
- Jasmine 與 Karma (67.7%)
- Jasmine 與 Jest (58.3%)
- Karma 與 Protractor (58.6%)
想要更深入了解,為什么 Jasmine 和 Karma 是一對(duì)優(yōu)秀的 JavaScript 單元測(cè)試組合。繼續(xù)在這里閱讀。
原文出處: MARK KARDASHOV 譯文出處:IT程序獅