2016年2月13日 星期六

github 上托管之 javascript 專案以 node.js 執行之 console 程式之持續整合 (CI)

what's CI ? why ?


從戰略的高度來看,整個 use case 可以由這篇來總結: CI 怎樣帶你遠離平庸?

用比較通俗的話來說,就是建立一個低成本的工作流程以讓人不可自拔地沉淪於攻城獅的角色之中

四年前的拙作: Ubuntu上Jenkins的試用 ,針對的是自建環境而非 github ,因此重新 survey 了一下最佳實務,而作此文(啊寫得像XX樓記的感覺…)

where & when


如標題所言,本文特別要討論的場景是:“github 上托管之 javascript 專案以 node.js 執行之 console 程式”,因為這剛好也是手上案子的實際情況

how


從戰術的高度來說,目前 github 上流行的套餐可以如此總結: mocha + chai + Travis CI + Codecov 使用流程

简单来说,就是使用 mocha 作为测试框架,chai 作为断言库,将项目交给 Travis CI 做自动测试,交给 Codecov 做覆盖率测试。

如果工作流程套用的是 github flow ,那麼協作者會提出 pull request , 此時 code review 可以再參考 代碼審查(Code Review)with GitHub Flow

p.s. github 專案上炫目的 icon 要如何打上去呢? 參考 在github中加入图标

which (alternatives)


Nodejs开源项目里怎么样写测试、CI和代码测试覆盖率 ,覆蓋率測試使用的不是 codecov 而是 istanbul , 另外還有 “自动触发mocha测试” 的小技巧

ref




沒有留言:

張貼留言