コードカバレッジ
GitHub ActionsからLCOVテストカバレッジをアップロードし、Aikidoで追跡します。
コードカバレッジは、テストが実際にコードのどの程度を実行しているかを示します。CIでテストスイートを実行し、】【t_3d21c735】: LCOV レポートをアップロードして、Aikidoでリポジトリ、ファイル、行ごとのカバレッジを確認します。
仕組み
CIジョブはカバレッジを有効にしてテストを実行し、1つ以上の
lcov.infoファイルを探します。その Aikido Code Coverage GitHub Action がレポートをAikidoにアップロードします。
Aikidoは、リポジトリ、コミットSHA、ブランチに紐づけてレポートを保存します。
その コードカバレッジ タブには、各リポジトリの最新のアップロードが表示されます。
ユースケース
テストが不十分なリポジトリを確認する: Aikidoに接続されているリポジトリ間で全体のカバレッジを比較します。
コードベース内のギャップを見つける: リポジトリを開き、コードツリーまたはファイル一覧でカバーされていないファイルを確認します。
変更前にファイルを調べる: ソースに対する行レベルのカバレッジを開き、どのテストがすでにカバーしているかを確認します。
カバレッジが改善しているかを追跡する: テストを追加したり不要なコードを整理したりする際に、時系列のカバレッジを使用します。
前提条件
始める前に、次を確認してください:
現在ご利用のプランは ベーシック, Pro, Advanced、または エンタープライズ です。Developerプランではコードカバレッジを利用できません。
リポジトリは Aikidoに接続されている.
テストでは、次の形式の LCOV レポート(
lcov.info)を出力できます。Jestとpytest-covは標準でこれを出力できます。ほかのランナーも、LCOVをエクスポートできれば利用できます。
GitHub Actionを設定する
次を使用してください: Aikido Code Coverage GitHub Action。GitHub OIDCで認証するため、APIトークンやリポジトリシークレットは必要ありません。
テストでLCOVファイルを出力した後、次のようなステップを追加します:
アクションを実行するジョブには、次の権限を付与する必要があります id-token: write.
完全なワークフロー、複数のレポート、モノレポ、およびすべての入力については、次を参照してください GitHub Action README.
Aikidoでカバレッジを表示する
次回のアップロードが成功した後:
開く コード品質 > コードカバレッジ.
リポジトリ一覧を検索します。各行には、全体のカバレッジと最終更新日時が表示されます。
リポジトリを開くと、次の情報を確認できます:
カバレッジの概要:カバー済み、一部カバー済み、未カバーの行数
時系列のカバレッジ:アップロードごとの割合の変化
ファイル:次の形式で閲覧できます コードツリー またはフラットな ファイル一覧
ファイルを開くと、ソースに対する行レベルのカバレッジを確認できます。
ソースプレビューは、Aikidoがファイルをインポートしているかどうかに依存します。ソースがまだ利用できない場合でも、ファイル一覧にはカバレッジ率が表示されます。

トラブルシューティング
Aikidoに何も表示されない:リポジトリがAikidoに接続されていること、LCOVファイルに少なくとも1つの解析可能なソースファイルが含まれていること、アップロードステップが実行されたことを確認してください。
カバレッジが不完全に見える:テストをシャーディングしている場合やマトリックスを使用している場合は、すべてを
lcov.infoコミットごとに1回のアップロードに統合してください。次を参照してください GitHub Action README.レポートが大きすぎるとして拒否される:Aikidoは最大10 MBのLCOVペイロードを受け付けます。アップロード前にカバレッジ出力を絞り込むか、生成されたファイルを除外してください。
アクションが失敗する:次を確認してください GitHub Action README で必要な権限と入力を確認してください。
サポートが必要ですか?
次を開きます Intercomチャット 右下隅にあります。私たちのチームがお手伝いします。
最終更新
役に立ちましたか?