Codecov というカバレッジを計測するサービスを知ったので調べた
Codecovとは?
Codecovは、コードのテストカバレッジを可視化・管理するためのツールであり、CI/CDパイプラインと統合して自動的にテストカバレッジレポートを生成することができる
GitHub、GitLab、Bitbucketなどの主要なリポジトリホスティングサービスと連携し、プルリクエストごとのカバレッジ変化を確認できるのが特徴
主な特徴
1. CI/CDとの統合
CodecovはGitHub Actions、CircleCI、Travis CI、JenkinsなどのCI/CDツールと簡単に統合できる
テストが実行されるたびにカバレッジデータを自動的にアップロードし、レポートを作成する
2. 詳細なカバレッジレポート
Codecovは、どのファイルや関数がテストされているかを視覚的に表示し、未テストのコードを簡単に特定できる
また、プルリクエストごとにカバレッジの増減を表示し、カバレッジが低下した場合にアラートを送ることも可能
3. GitHubとの連携
GitHubのプルリクエストに直接カバレッジの変化をコメントとして追加し、レビュワーがコードの品質を素早く判断できるようにする
4. カスタマイズ可能な閾値設定
テストカバレッジの基準値を設定し、カバレッジが一定の閾値を下回った場合にビルドを失敗させることもできる
これにより、テスト不足のコードが本番環境にリリースされるリスクを減らせる
導入方法
以下の手順で設定できる
Codecovアカウントを作成
GitHubやGitLabのアカウントを使ってログインプロジェクトの登録
Codecov上でリポジトリを登録し、プロジェクトごとの設定を行う
今回はGHAでカバレッジの取得を行うので、GHAの設定を行うプロジェクトファイルの設定
リポジトリには以下をインストールしておく
npm install --save-dev vitest @vitest/coverage-v8
また、以下のスクリプトを用意しておく
"test": "vitest run --coverage"GHAの設定
GHAワークフローyamlファイルにCodecovを追加する
- uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}