osteele / osteele/gojekyll

Add test coverage reporting with Codecov

Open
#88 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

internals
Dominant language
Go
Stars
394
Forks
21
PR merge metrics
No merged PRs in 30d

Description

Description

Add test coverage reporting to CI workflow using Codecov, similar to the liquid project's implementation.

Benefits

  • Track test coverage trends over time
  • Identify untested code paths
  • Prevent coverage regressions in PRs
  • Visualize coverage with badges

Implementation

Add a new coverage job to .github/workflows/go.yml that:

  1. Runs after tests pass
  2. Only runs on pushes (not PRs to avoid duplicate runs)
  3. Generates coverage report with go test -coverprofile=coverage.out ./...
  4. Uploads to Codecov using codecov/codecov-action@v4
  5. Set fail_ci_if_error: false to not block on Codecov issues

Reference

See liquid project's coverage job: https://github.com/osteele/liquid/blob/main/.github/workflows/go.yml#L40-L66

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with .github/workflows/go.yml and compare its existing test jobs with the linked liquid workflow. Verify the Go coverage command and Codecov action configuration, including push-only execution and non-blocking upload behavior. Done means the workflow produces coverage.out after tests pass and uploads it to Codecov without blocking CI on Codecov errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, go
Domain
ci-cd, testing-qa
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.