Codecov Go Example
-covermode=countto show how many times a statement was executed.
Add to your
language: go go: - 1.8.x - tip before_install: - go get -t -v ./... script: - go test -race -coverprofile=coverage.txt -covermode=atomic after_success: - bash <(curl -s https://codecov.io/bash)
- All other CI you can simply run
bash <(curl -s https://codecov.io/bash).
-raceis a suggestion, not required. Learn more at https://blog.golang.org/race-detector
If you see this
cannot use test profile flag with multiple packagesthen use this shell template to execute your tests and store coverage output
#!/usr/bin/env bash set -e echo "" > coverage.txt for d in $(go list ./... | grep -v vendor); do go test -race -coverprofile=profile.out -covermode=atomic $d if [ -f profile.out ]; then cat profile.out >> coverage.txt rm profile.out fi done
Then run this file as your test (ex.
Repository tokens are required for (a) all private repos, (b) public repos not using Travis-CI, CircleCI or AppVeyor. Find your repository token at Codecov and provide via appending
-t <your upload token> to you where you upload reports.