原創|行業資訊|編輯:龔雪|2015-04-30 09:02:55.000|閱讀 632 次
概述:隨著單元測試的普及,尤其是敏捷開發的推動,JavaScript單元測試變得越來越重要,今天小編就為大家介紹幾個具有代表性的JS單元測試框架。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
單元測試在后臺開發中非常流行和普及,比如JAVA開發者的JUnit等,而在前端開發中則使用的非常少。究其原因,主要是單元測試更適用于邏輯代碼的測試,這對于JAVA等后臺編程語言來說測試起來非常方便,但是前端開發很多時候要要UI打交道,UI相關的代碼不是不可以進行單元測試,但的確很麻煩,比起邏輯代碼來說困難多了,這就導致了單元測試在前端開發沒有普及起來。
但是隨著單元測試的普及,尤其是敏捷開發的推動,涌現了許多優秀的JavaScript單元測試框架,如QUnit、Jasmine等。所有的這些框架基本上都能對Javascript代碼進行很好的測試,當然UI部分的代碼測試一樣比較麻煩,但是我們可以通過精心構造我們的測試代碼來測試部分UI代碼。但是每個框架都不是萬能的,它們都有各自擅長的領域,下面選取了幾個具有代表性的框架進行介紹。
Cucumber是一款富有盛名的BDD(行為驅動開發)框架,特別是在Ruby 社區,它有著很高的知名度,然而大家可能不了解的是,Cucumber通過cucumber-jvm很好地支持了jvm平臺上的各類語言,包括Java、Clojure、Scala、Groovy 等等。同時Cucumbe還能夠理解用普通語言描述的測試用例的支持行為驅動開發(BDD)的自動化測試工具,用Ruby編寫并支持Java和·Net等多種開發語言。
Jasmine是一個有名的javascript單元測試框架,它是獨立的行為驅動開發框架,提供了對JavaScript開發者來說相對容易使用的測試語法,可以幫助程序員輕松寫出自己的單元測試代碼。
Jasmine是基于行為驅動開發實現的測試框架,它的語法非常貼近自然語言,簡單明了,容易理解。不僅如此,Jasmine還能很方便的和Ant/Maven等進行集成進行自動化測試,也可以方便和Jekins等持續集成工具進行集成,可以生成測試結果的XMl文檔。同時Jasmine還有豐富的API,也支持用戶擴展到它的API上。Jasmine不僅支持在瀏覽器中的測試,還支持在Rhino和node.js等后端測試。
Mocha是一個簡單、靈活有趣的JavaScript 測試框架,用于Node.js和瀏覽器上的JavaScript應用測試。Mocha是具有豐富特性的JavaScript測試框架,可以運行在Node.js和瀏覽器中,使得異步測試更簡單、更有趣。Mocha可以持續運行測試,支持靈活又準確的報告,當映射到未捕獲異常時轉到正確的測試示例。
不僅如此,Mocha還具有以下特點:
QUnit是一個非常強大的JavaScript單元測試框架,可以幫助程序員調試代碼。它是由 jQuery團隊的成員寫的,而且是jQuery的官方測試套裝。QUnit一般是足以測試任何常規JavaScript代碼,它甚至可以通過一些JavaScript引擎,比如Rhino或V8來測試服務器端JavaScript。
QUnit使用起來非常方便,它擁有漂亮的外觀和完整的測試功能(包括異步測試);不僅如此,QUnit還不需要依賴其它任何軟件包或框架,只要有能運行JS的地方就可以。它本身只有一個JS文件和CSS文件,當然如果需要也可以和jQuery等其它框架集成。QUnit支持在瀏覽器中測試,還支持在Rhino和node.js等后端測試。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件網