Closed yuxino closed 3 years ago
统计代码覆盖率。检查哪些代码没覆盖到。
左边的badge来自circleci。右边的来自codecov。codecov - 就是拿来生成badge用的纯工具人玩意。因为circleci没有覆盖率的badge,很难受。circleci 就不用多说了常规的 ci。
拿circleci 做了仨事情。 一个是跑测试,一个是存报告 (之后可以拿来看),还有一个是给codecov上报。
你先装好 jest。写好script,比如叫做test:ci。
jest
script
test:ci
"test:ci": "jest --coverage --verbose"
说明一下配置, coverage是--collectCoverage=true的别名。用来自动生成报告。verbose是我的习惯,有时候我想看看console出来的输出。方便 debug 。
coverage
--collectCoverage=true
verbose
console
配置circleci的配置文件。
circleci
version: 2.1 orbs: codecov: codecov/codecov@1.1.1 jobs: build: docker: - image: circleci/node steps: - checkout - run: yarn install - save_cache: paths: - node_modules key: v1-yarn-deps-{{ checksum "package.json" }} - run: yarn test:ci - store_artifacts: path: coverage - codecov/upload: file: ./coverage/lcov.info token: codecov的token
注意版本要是verson2.1。不然我们没法用orbs,低版本不支持codecov/upload这个写法。 store_artifacts这个目录我们看到了是coverage,因为jest默认生成的报告的目录就是coverage,我们把它传到circleci的服务器就好了,方便以后查阅。
verson2.1
codecov/upload
点进去就能看覆盖率了。
私有项目稍微打了个码。
BTW: orbs也不是必须要的,只要能把lcov.info传给codecov就可以了,至于怎么传很多办法,这里不过多描述。
lcov.info
codecov 的 token 是 uuid 内个别弄错了。设置里的Repository Upload Token内个。
推代码到github,到 circleci 激活一下就可以了。
badge 可以在circleci和codecov的设置里面找到。就酱紫。
效果
作用
统计代码覆盖率。检查哪些代码没覆盖到。
解说
左边的badge来自circleci。右边的来自codecov。codecov - 就是拿来生成badge用的纯工具人玩意。因为circleci没有覆盖率的badge,很难受。circleci 就不用多说了常规的 ci。
拿circleci 做了仨事情。 一个是跑测试,一个是存报告 (之后可以拿来看),还有一个是给codecov上报。
咋整
首先
你先装好
jest
。写好script
,比如叫做test:ci
。说明一下配置,
coverage
是--collectCoverage=true
的别名。用来自动生成报告。verbose
是我的习惯,有时候我想看看console
出来的输出。方便 debug 。然后
配置
circleci
的配置文件。注意版本要是
verson2.1
。不然我们没法用orbs,低版本不支持codecov/upload
这个写法。 store_artifacts这个目录我们看到了是coverage
,因为jest默认生成的报告的目录就是coverage
,我们把它传到circleci的服务器就好了,方便以后查阅。点进去就能看覆盖率了。
私有项目稍微打了个码。
BTW: orbs也不是必须要的,只要能把
lcov.info
传给codecov就可以了,至于怎么传很多办法,这里不过多描述。最后
codecov 的 token 是 uuid 内个别弄错了。设置里的Repository Upload Token内个。
最最后
推代码到github,到 circleci 激活一下就可以了。
最最最后
badge 可以在circleci和codecov的设置里面找到。就酱紫。