あなたのGithubリポジトリでPHPとPestのテストカバレッジバッジを追加します
8068 ワード
あなたがgithubリポジトリを横切って歩くならば、あなたは彼らのほとんどが若干のバッジを示すのを見ることができます.バッジは、コードのステータス、リポジトリ、ワークフローなどを表示するアイコンです.
GithubリポジトリのREADMEファイルでは、バッジを含めることができます.
バッジは次のとおりです.パッケージバージョンを示します 数ダウンロード; 問題情報(合計、オープン、クローズ)… テスト実行の結果 Githubアクションワークフローからの結果など バッジを生成する良いウェブサイトはhttps://shields.io/です
あなたのニーズに合うバッジを見つけることがない場合は、1つを作成することができますか、またはあなたのニーズに固有のいくつかのツールを使用することができます.
前回のプロジェクトでは、テストコードカバレッジを測定する必要がありました.
通常、テストスイートが端末で実行された場合は、コマンドライン経由で端末に結果が表示されます.
また、“標準”形式でいくつかの特定のファイルの結果を保存するオプションがあります.
たとえば、“クローバー”形式は、いくつかの他のニースメトリックのコードカバレッジEを報告するXMLファイルです.
Github actionワークフローでテストスイートを実行すると、クローバー形式を読み込むことができ、カバレッジの値を使用してバッジをレンダリングする必要があります.
次に、バッジをリポジトリにコミットする必要があります.
要約する github actionワークフローでテストを実行する クローバー形式(clover . xmlファイル)でレポートを保存します は「クローバー」を読む「アクション」を使います.XMLファイルは、バッジを生成し、コミット/リポジトリに新しいバッジをプッシュします. READMEファイルでは、バッジ画像を含める必要があります.
Github actionワークフローでテストを実行する
テストを実行するには、phpunitまたはpestを使用できます.両方のツールは、クローバー形式でレポートを保存するためのオプションを持っている(PestはPHPUnitによって提供される機能を使用しています).
バッジを作る
バッジを作成するために、このアクションを見つけました.
このアクション:は、クローバーを読みます.XMLファイル バッジファイルをカバーします. オプションのは、Pushstraバッジオプションを通してバッジを遂行して、押します; 24579172 REPOへのバッジを押すために、あなたはRepoRankトークンをセットする必要があります.
phpunit-coverage-badge
READMEファイルの更新
バッジファイルが作成されたので、READMEファイルにイメージの典型的なマークダウン構文を含める必要があります.
現在のバッジは以下の通りです.
ワークフローファイル
全てのYAMLファイル( . github/ワークフローディレクトリに保存する必要があります):
GithubリポジトリのREADMEファイルでは、バッジを含めることができます.
バッジは次のとおりです.
あなたのニーズに合うバッジを見つけることがない場合は、1つを作成することができますか、またはあなたのニーズに固有のいくつかのツールを使用することができます.
前回のプロジェクトでは、テストコードカバレッジを測定する必要がありました.
Code coverage is the percentage of code which is covered by automated tests. Code coverage measurement simply determines which lines of code / instructions have been executed through a test run, and which lines / instructions have not. The percentage is calculated based on code covered and all code (number of lines of code).
通常、テストスイートが端末で実行された場合は、コマンドライン経由で端末に結果が表示されます.
また、“標準”形式でいくつかの特定のファイルの結果を保存するオプションがあります.
たとえば、“クローバー”形式は、いくつかの他のニースメトリックのコードカバレッジEを報告するXMLファイルです.
Github actionワークフローでテストスイートを実行すると、クローバー形式を読み込むことができ、カバレッジの値を使用してバッジをレンダリングする必要があります.
次に、バッジをリポジトリにコミットする必要があります.
要約する
Github actionワークフローでテストを実行する
テストを実行するには、phpunitまたはpestを使用できます.両方のツールは、クローバー形式でレポートを保存するためのオプションを持っている(PestはPHPUnitによって提供される機能を使用しています).
- name: Execute tests (Unit and Feature tests) via PestPHP
run: vendor/bin/pest --coverage-clover clover.xml
このように、クローバー.XMLファイルが作成されます.バッジを作る
バッジを作成するために、このアクションを見つけました.
このアクション:
- name: Generate test coverage badge
uses: timkrase/[email protected]
with:
coverage_badge_path: 'badge-coverage.svg'
push_badge: true
repo_token: ${{ secrets.GITHUB_TOKEN }}
さて、メインブランチでコードをプッシュするたびに、テストスイートが実行されバッジが更新されます.phpunit-coverage-badge
READMEファイルの更新
バッジファイルが作成されたので、READMEファイルにイメージの典型的なマークダウン構文を含める必要があります.
[![Test Coverage](https://raw.githubusercontent.com/Hi-Folks/array/main/badge-coverage.svg)](https://packagist.org/packages/hi-folks/array)
Hi - Files/Arrayをプロジェクトのorg/repoで置き換える必要があります.現在のバッジは以下の通りです.
ワークフローファイル
全てのYAMLファイル( . github/ワークフローディレクトリに保存する必要があります):
name: Test Coverage PHP Package
on:
push:
branches:
- main
jobs:
laravel-tests:
runs-on: ubuntu-latest
strategy:
matrix:
operating-system: [ubuntu-latest]
php-versions: [ '8.0' ]
name: P${{ matrix.php-versions }} - L${{ matrix.laravel }} - ${{ matrix.operating-system}}
steps:
- uses: actions/checkout@v2
- name: Install PHP versions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
- name: Install Dependencies
run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
- name: Show dir
run: pwd
- name: PHP Version
run: php --version
# Code quality
- name: Execute tests (Unit and Feature tests) via PestPHP
# Set environment
env:
SESSION_DRIVER: array
run: vendor/bin/pest --coverage-clover clover.xml
- name: Generate test coverage badge
uses: timkrase/[email protected]
with:
coverage_badge_path: 'badge-coverage.svg'
push_badge: true
repo_token: ${{ secrets.GITHUB_TOKEN }}
Reference
この問題について(あなたのGithubリポジトリでPHPとPestのテストカバレッジバッジを追加します), 我々は、より多くの情報をここで見つけました https://dev.to/robertobutti/add-test-coverage-badge-for-php-and-pest-in-your-github-repository-37moテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol