For the complete documentation index, see llms.txt. This page is also available as Markdown.

コードカバレッジ

GitHub ActionsからLCOVテストカバレッジをアップロードし、Aikidoで追跡します。

コードカバレッジは、テストが実際にコードのどの程度を実行しているかを示します。CIでテストスイートを実行し、】【t_3d21c735】: LCOV レポートをアップロードして、Aikidoでリポジトリ、ファイル、行ごとのカバレッジを確認します。

カバレッジに基づくPRゲーティングは近日提供予定です。現在、Aikidoはダッシュボードでカバレッジを報告します。カバレッジが低下してもプルリクエストを失敗にはしません。

仕組み

  1. CIジョブはカバレッジを有効にしてテストを実行し、1つ以上の lcov.info ファイルを探します。

  2. その Aikido Code Coverage GitHub Action がレポートをAikidoにアップロードします。

  3. Aikidoは、リポジトリ、コミットSHA、ブランチに紐づけてレポートを保存します。

  4. その コードカバレッジ タブには、各リポジトリの最新のアップロードが表示されます。

ユースケース

  • テストが不十分なリポジトリを確認する: Aikidoに接続されているリポジトリ間で全体のカバレッジを比較します。

  • コードベース内のギャップを見つける: リポジトリを開き、コードツリーまたはファイル一覧でカバーされていないファイルを確認します。

  • 変更前にファイルを調べる: ソースに対する行レベルのカバレッジを開き、どのテストがすでにカバーしているかを確認します。

  • カバレッジが改善しているかを追跡する: テストを追加したり不要なコードを整理したりする際に、時系列のカバレッジを使用します。

  • カバレッジを品質向上の取り組みと組み合わせる: ある リポジトリスキャン または PRチェック がファイルをフラグ付けした場合、そのファイルがテストされているか確認します。

前提条件

始める前に、次を確認してください:

  • 現在ご利用のプランは ベーシック, Pro, Advanced、または エンタープライズ です。Developerプランではコードカバレッジを利用できません。

  • リポジトリは Aikidoに接続されている.

  • テストでは、次の形式の LCOV レポート(lcov.info)を出力できます。Jestとpytest-covは標準でこれを出力できます。ほかのランナーも、LCOVをエクスポートできれば利用できます。

コードカバレッジのアップロードは現在GitHubで利用できます。Azure DevOps、GitLab、Bitbucketを含むその他のSCMのサポートは近日提供予定です。

GitHub Actionを設定する

次を使用してください: Aikido Code Coverage GitHub Action。GitHub OIDCで認証するため、APIトークンやリポジトリシークレットは必要ありません。

テストでLCOVファイルを出力した後、次のようなステップを追加します:

アクションを実行するジョブには、次の権限を付与する必要があります id-token: write.

完全なワークフロー、複数のレポート、モノレポ、およびすべての入力については、次を参照してください GitHub Action README.

Aikidoでカバレッジを表示する

次回のアップロードが成功した後:

  1. リポジトリ一覧を検索します。各行には、全体のカバレッジと最終更新日時が表示されます。

  2. リポジトリを開くと、次の情報を確認できます:

    • カバレッジの概要:カバー済み、一部カバー済み、未カバーの行数

    • 時系列のカバレッジ:アップロードごとの割合の変化

    • ファイル:次の形式で閲覧できます コードツリー またはフラットな ファイル一覧

  3. ファイルを開くと、ソースに対する行レベルのカバレッジを確認できます。

ソースプレビューは、Aikidoがファイルをインポートしているかどうかに依存します。ソースがまだ利用できない場合でも、ファイル一覧にはカバレッジ率が表示されます。

コードカバレッジでは、リポジトリレベルの傾向とファイルごとのカバレッジを1つのビューで確認できます。

トラブルシューティング

  • Aikidoに何も表示されない:リポジトリがAikidoに接続されていること、LCOVファイルに少なくとも1つの解析可能なソースファイルが含まれていること、アップロードステップが実行されたことを確認してください。

  • カバレッジが不完全に見える:テストをシャーディングしている場合やマトリックスを使用している場合は、すべてを lcov.info コミットごとに1回のアップロードに統合してください。次を参照してください GitHub Action README.

  • レポートが大きすぎるとして拒否される:Aikidoは最大10 MBのLCOVペイロードを受け付けます。アップロード前にカバレッジ出力を絞り込むか、生成されたファイルを除外してください。

  • アクションが失敗する:次を確認してください GitHub Action README で必要な権限と入力を確認してください。

サポートが必要ですか?

次を開きます Intercomチャット 右下隅にあります。私たちのチームがお手伝いします。

最終更新

役に立ちましたか?