公告版位

在前面的文章提到了使用Node.js進行單元測試和計算程式覆蓋率,以及在GitHub上使用Travis CI進行整合,這篇文章延續前幾篇文章內容,進一步利用Coveralls整合程式覆蓋率統計至Github上。

請先參考下列文章:

使用mocha在Node.js和瀏覽器環境中單元測試

在Github上使用Travis CI進行持續整合 - Node.js

使用jscoverage計算Node.js程式覆蓋率

1. Github專案啓用Coveralls功能

和Travis CI一樣,Coveralls可以直接使用GitHub帳號登入,登入後點擊REPOS下的ADD REPOS看到自己有的專案

螢幕快照 2015-02-08 下午2.15.48

點擊左邊的開關即可啓用

2. 修改package.json檔案

在scripts的設定下增加一個coveralls專用的指令如下:

  "scripts": {
    "test": "mocha tests/node-test.js -r jscoverage",
    "coveralls": "mocha tests/node-test.js -R mocha-lcov-reporter -r jscoverage | coveralls"
  },

這個coveralls指令只會在Travis CI上面執行,平常本機測試使用npm test即可,相關的npm本機也不用安裝。

3. 修改.travis.yml檔案

Coveralls需要安裝coveralls的npm,另外由於本文使用mocha的測試框架,還需要安裝mocha-lcov-reporter的npm將測試結果轉換成coveralls能夠接受的格式。

而Travis CI原本預設會執行npm test來做測試,我們修改成執行上面新增的coveralls指令,範例如下:

language: node_js
node_js:
  - "0.11"
  - "0.10"
  - "0.8"
before_install:
  - npm install mocha -g
  - npm install coveralls -g
  - npm install mocha-lcov-reporter -g
script: npm run-script coveralls

4. 加入Badge

可以在README.md中加入Badge圖片來顯示程式覆蓋率的結果,同樣以js-md5為例,加入以下語法:

[![Coverage Status](https://coveralls.io/repos/emn178/js-md5/badge.svg?branch=master)](https://coveralls.io/r/emn178/js-md5?branch=master)  

將會看到類似這樣的結果:

Coverage Status

 

網址格式為:https://coveralls.io/repos/你的帳號/專案名稱

5. 更新專案

最後只要更新你的專案到GitHub上,就會自動進行CI流程,測試完成後Travis CI會將資料送至Coveralls,可以透過Badge看到結果,或者連到Coveralls的頁面查詢詳細資訊。

文章標籤
創作者介紹

小殘的程式光廊

emn178 發表在 痞客邦 PIXNET 留言(1) 人氣()


留言列表 (1)

發表留言
  • 藍象3D效果圖
  • 請問一下jquery可以做到把一個新網頁載入到_SELF網頁,並且是可以移動的視窗,有可能實現嗎?該研究那些SCRIPT和參數呢?
  • 你可以用jQuery UI的Dialog套件,請參考
    https://jqueryui.com/dialog/

    emn178 於 2015/04/26 11:52 回覆

找更多相關文章與討論