- はじめに
- Codecovでアカウント登録
- リポジトリの追加とトークンの取得
- GitHubのリポジトリにトークンを登録
- GitHub Actionsのワークフローからカバレッジレポートをアップロード
- バッジをREADMEに追加
はじめに
Codecovの導入手順をまとめます。
オープンソースなプロジェクトであれば無料ですが、プライベートリポジトリでも5ユーザまでであればFreeプランで無制限に使用できます。
以前はFreeプランで使用できるプライベートリポジトリは1つだけだったようですが、ありがたいことに最近料金プランが変わったみたいです。
What is changing? Codecov is moving from per repository pricing to per user pricing: https://codecov.io/pricing.
For organizations with private repositories, Codecov is now free for the first 5 users, and all plans now include unlimited private repos.
Codecovでアカウント登録
サインアップページの Sign up with GitHub
からアカウントを作成します。手順通り進めるだけなので省略します。
リポジトリの追加とトークンの取得
Add a repositoryを選択
Codecovを導入するリポジトリを選択
表示されるトークンをコピー
GitHubのリポジトリにトークンを登録
Settings > Secrets > New secret
から CODECOV_TOKEN
という名前でコピーしたトークンを登録します。
登録後は以下の通りSecretsが表示されます。
GitHub Actionsのワークフローからカバレッジレポートをアップロード
Codecov GitHub Action
を使用し、ワークフロー内で作成したカバレッジレポートをCodecovにアップロードします。
ワークフロー のYAMLファイルでビルド後(カバレッジレポート出力後)に以下のステップを追加するだけです。
Codecov GitHub Action
は自動的にレポートファイルを検出してくれます。
全てのPRで実行したいのでトリガーに on.pull_request
を設定しておきます。
name: build on: push: branches: [ master ] pull_request: jobs: build: runs-on: ... steps: # ~ビルドのステップは省略~ - name: Upload coverage to Codecov uses: codecov/codecov-action@v1 with: token: ${{ secrets.CODECOV_TOKEN }}
これでPRを契機に以下の通りカバレッジレポートがCodecovにアップロードされます(JaCoCoのレポートで試してます)。
アップロードが正常に終了すると、ボットがマージ先ブランチのカバレッジの変化をPRにコメントしてくれます。
バッジをREADMEに追加
Codecovでリポジトリのページから Settings > Badge
にアクセスするとリンクを取得できます。
このリンクをREADMEのファイルに貼り付けることで以下のようにカバレッジ率を表示することができます。