什么是shields? 不知道大家在github、npm上肆意的浏览代码、使用工具的时候,有没有注意到这样的小图标:
这些小图标都是用来做什么的呢? 简单的来说,这些小图标,更像是一枚徽章(Badge),显而易见的标明了该项目当前的某些状态,以下统称为badge。
每个badge都有一个制作的标准,如下图所示,他基本遵循了去除不必要的文本、减少水平长度(如果可以)的基本原则,使他们看起来一目了然。
同时安利一个在线制作badge的网址,亲测好用到不行~
一个标准的badge通常主要包含了两部分,左侧的状态文字(通常以较深色系的灰色、黑色作为背景色)以及右侧的状态信息(通常以除灰色、黑色等深色系作为背景色),同时无论状态文字或者状态信息都应尽量保持简洁,可以达到一目了然的目的。
以下举例作为参考:
- test build status: build | failing
- code coverage percentage: coverage | 80%
- status of third-party dependencies: dependencies | out-of-date
标准badge同样的状态会有不同的颜色,不同的颜色会反馈出不同的信息,比如:
① ②
badge ①和②均表示该项目在npm的版本,而不同的颜色使人一眼就能区分出,哪个是正式版(badge①)哪个是非正式版(badge②);通常以计算机三基色(RGB)作为背景色的状态表示确定的、严谨的,反之表示有缺陷的、不能完全确定的。
以下举例常用的badges
项目所在npm的版本 | |
以除计算机三基色(RBG)作为背景色(通常为orange)表示该项目目前还不是正式版 | |
项目的依赖情况 | |
少部分依赖不是最新版本 | |
至少有一半或者一半以上不是最新的依赖 | |
可持续集成 | |
代码覆盖率 | |
交流社区 |
-
持续集成
持续集成指的是,频繁的(一天多次)将代码集成到主干。他的目的就是让产品可以快速迭代,同时还能保持高质量
一个自动化的可持续集成网站:https://travis-ci.org
更多关于可持续集成的介绍你可以 点击这里 -
项目依赖检测
在这里 你可以检测项目依赖情况
-
代码覆盖率
通常指在运行测试用例后,一共走过了多少句代码,用走过的这个代码除以测试对象的代码行数,就是这次测试的代码覆盖率了。
更多关于代码覆盖率的解释你可以参考这里:http://www.cnblogs.com ; http://baike.baidu.com
- 本例中所有的badge均为展示作用,并无实际意义。
- 更多关于shields的介绍你可以 访问这里