什么是Travis CI
Travis CI是在软件开发领域中的一个在线的,分布式的持续集成服务,用来构建及测试在GitHub托管的代码。这个软件的代码同时也是开源的,可以在GitHub上下载到,尽管开发者当前并不推荐在闭源项目中单独使用它。
Travis CI可以设置github托管的项目在push或者pull等时机触发构建与测试,进行持续集成,简单说,是一个基于Github的免费持续集成服务。
如何使用Travis CI
- 1.登陆Travis CI官网,使用github授权登录,官网地址
- 2.添加持续集成的项目,如下图所示,点击+号添加需要持续集成的项目。
- 3.继续操作,选择需要持续集成的项目,点击齿轮进行详细配置。
- 4.配置持续集成的条件,一般选择红线部分开启即可。
配置.travis.yml文件
在你的项目中建立.travis.yml文件,这是一种yaml语言的配置文件,基本格式如下:
branches:
only:
- master
language: node_js
node_js:
- '4.2.2'
- '6.0.0'
script:
- make test-all
after_success: cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js
#env:
# global:
# - xxx: xxx
以上格式就是指该项目,持续集成的分支是master,环境是node_js, 版本是4.2.2和6.0.0。项目默认会安装package.json中的依赖,之后会执行make test-all命令。
使用Overalls进行覆盖率测试
覆盖率测试的主要原理是,通过istanbul收集到mocha的cover信息,然后通过coveralls的工具,结合token传到平台上。
1.通过github登录Overalls官网,官网地址
2.添加Repo。
- 3.添加.coveralls.yml文件,配合Travis CI账号是用,一般.coveralls.yml配置如下:
service_name: travis-pro
repo_token: xxx
- 4.编写测试文件,nodejs用mocha的例子结果如下:
为README.md增加badge
Travis CI和Overalls配置好后,会在项目每次push的时候进行测试,测试结果可以用badge的形式在README中体现。
makedown格式的badge如下:
[](https://api.travis-ci.org/excaliburhan/api-koa)
[](https://coveralls.io/github/excaliburhan/api-koa?branch=master)
自定义badge
这里推荐一下shields.io,可以自定义badge,自定义格式如下:
Comments
注:如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理。