Travis CI(continuous integration )是目前新兴的开源持续集成构建项目,它与jenkins,GO的很明显的特别在于采用yaml格式,简洁清新独树一帜。目前大多数的github项目都已经移入到Travis CI的构建队列中,听说Travis CI天天运行超过4000次完整构建。node
还有Travis有付费和免费版本,对于开源项目(github)是免费的,对于私有项目是要收费的。企业级私有应用须要找Travis商业合做git
另外若是是Window上开发,须要注意一下有没有针对Window用的命令,例如:package.json中的脚本写成'test':'.\\node_modules\\.bin\\karma.cmd start'
github
Travis和github是一对好基友,travis对github开源的项目彻底免费。npm
首先须要用github帐号登录travis网站json
注册成功后,而后点击本身的帐户头像,markdown
而后开启Travis框架
在项目中增长.travis.yml
配置文件svg
以上操做已经完成了项目的CI全部工做了。网站
README.md
增长逼格badge
首先README要是一个markdown文档。ui
Build Status
是由Travis提供的真实的构建状况badge
。首先到Travis找到对应的项目(以下图),而后点击这个如图这个图标,选择markdown,会自动生成markdown的路径,拷贝路径到README就能够了。
代码覆盖率生成报告的框架是用istanbul
,若是想在github上生成对应的badge
,须要将istanbul
生成的报告发给CoverAlls
。和Travis同样使用CoverAlls也须要先用github的帐号登录CoverAlls,而后再开启项目,详见下图:
具体配置以下:
package.json
增长
//注意package.json要有coveralls npm库的依赖, //另外由于生成的报告目录是:coverage/Chrome 59.0.3071 (Windows 7 0.0.0)/lcov.info, //因此这边cat的时候携程`./coverage/*/lcov.info` "test": "./node_modules/.bin/karma start --single-run && cat ./coverage/*/lcov.info | coveralls",
karma.conf.js
增长
after_success: # - ls /home/travis/build/ganxunzou/MyKarma/coverage 能够看你报告生成报告的目录内容,注意项目路径。 - npm run coveralls
badge
若是你的项目是一个NPM的库,你能够把库提交到NPM,而后再用NPM提供的badge
用法很简单。https://img.shields.io/npm/dm/xxx.svg
其中xxx是你项目的名字,dm
是download简写。
好比个人地址就是[https://img.shields.io/npm/dm/MyKarma.svg](https://img.shields.io/npm/dm/mykarma.svg)
download
[](https://github.com/ganxunzou/MyKarma)
License
[](https://github.com/ganxunzou/MyKarma)
Version
[](https://github.com/ganxunzou/MyKarma)