前言
好久沒有寫博了,主要還是太懶=。=,有點時間都去帶娃、看書了,今天給大家分享一個原創的小東西,如果大家對TDD或者BDD有興趣,可以也嘗試一下哦。
PS:附上小女萌圖一張:^_^
使用的工具/框架
webstorm
這個做前端的童鞋們應該都比較熟悉了吧,jetBrain出品的IDE神器,做Web開發、Node.js開發都可以。功能十分強大,我們今天的測試框架就是要與它集成,實現“開發的同時自動測試”。下面給出一些相關的資料地址:
- 官網:http://www.jetbrains.com/webstorm
- 淘寶明河同學的webstorm最佳實踐(在線電子書):http://www.book.36ria.com/webstorm/index.html
Karma
這個是一個很強大的測試框架(Test Runner),可能有些童鞋不認識,不過相信有不少人用過jsTestDriver.是的,Karma也是Google出品,其前身叫做TestAcular,據其介紹視頻上說,是Google在開發AngularJS的時候,感覺到jsTestDriver有一些不足,從而重新開發了一套測試框架。
其官網地址:http://karma-runner.github.io/0.10/index.html
補充一句:Karma本身只是一個測試框架,而不是assert framework,它支持你使用任何的斷言lib,比如jasmine,mocha,qunit等等。也支持你使用任意的reporter生成報表。
實現步驟
Step1:安裝Webstorm和Karma
- Webstorm是收費的,但是屌絲們總是有辦法的,你們懂的,這里IDE的安裝就不說了,很簡單一路默認即可。
- Karma是依賴Node.js的,所以要先安裝Node.js,可以去這里下載,然后直接安裝即可。
- 安裝完node之后,npm也就附帶安裝了,npm就是node.js的包管理器,我們通過它來安裝其他的第三方庫、框架,下面打開cmd窗口,輸入“npm install -g karma”,等幾分鍾就會看到安裝完成的提示了
- 安裝完成后,注意看cmd窗口提示,里面會有最終安裝到的路徑(比如我用的Win7系統,就是C:/users/xxx/AppData/Roaming/npm/),把這個路徑記下,后面會用到
現在Karma就安裝好了,默認Karma會自動安裝karma-jasmine插件,這是一個能夠使用jasmine斷言語法的框架,我們今天的測試用例就是用它來寫啦。
Step2:設置Webstorm
下面到重點了,通過對webstorm的settings的一番摸索,終於找到了一個很方便的辦法,可以讓我們輕松的實現在IDE一邊開發、一邊同步看到測試結果的方法,下面就介紹如何來設置:
- 打開webstorm,選擇File->Settings。
- 點擊External Tools->+圖標,彈出配置窗口,按照如下方式配置
- name:主要是描述這是什么東西,隨你喜好
- Program:這個很重要,把之前記下的安裝路徑填寫到這里
- 后面2個參數照着填寫即可,不需修改
- 設置完成后,就ok了,下面我們來看看效果。
注意本篇文章不是講karma的使用,所以具體如何使用karma來單元測試,請移步官網看一下介紹即可,下面直接使用我目前的一個karma工程演示一下效果
效果演示
選擇要運行的測試配置文件:右鍵啟動測試。下面會直接顯示命令行窗口,當前的測試自動開始運行。
karma還可以監控你測試中的文件,一旦你改動了任何地方,save的時候,test可以自動運行。
總結
今天主要是把這個小技巧記錄、分享一下,沒啥好總結的了,祝大家玩的開心~。
感謝支持
精彩的還在后面,請大家多多支持,給點動力哈~
如果本文對您有幫助的話,請別吝嗇手中的推薦票哦~