Skip to content

feat: add PCOV-based unit/feature coverage tooling - #16

Open
oreno4649 wants to merge 1 commit into
exceedone:masterfrom
oreno4649:feat/add-coverage
Open

feat: add PCOV-based unit/feature coverage tooling#16
oreno4649 wants to merge 1 commit into
exceedone:masterfrom
oreno4649:feat/add-coverage

Conversation

@oreno4649

@oreno4649 oreno4649 commented May 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

This PR brings covering coverage tooling for PHP container.

Code coverage tooling (new)

  • Install PCOV in the PHP image for fast coverage collection (avoids
    the 5–10x slowdown of Xdebug)
  • docker/php/volumes/merge-coverage.php: merge per-suite .cov
    dumps into clover / html / text reports
  • New Makefile targets:
    • make test-coverage-unit / test-coverage-feature / test-coverage-merge
    • make test-coverage (one-shot: unit → feature → merge)
    • make test-browser (runs browser tests with pcov.enabled=0 to
      avoid PCOV segfaults on BrowserKit)
  • pcov.enabled=1 and pcov.directory set in php.ini

Summary

コードのカバレッジ計測の整備のためにPHPのコンテナにコードカバレッジ計測用の設定を追加しました。

コードカバレッジ計測(新規)

  • PHP イメージに PCOV を導入(Xdebug 比で 5〜10 倍高速にカバレッジ
    を取得可能)
  • docker/php/volumes/merge-coverage.php: suite ごとの .cov ダンプ
    を clover / html / text レポートに統合するスクリプト
  • Makefile に以下のターゲットを追加:
    • make test-coverage-unit / test-coverage-feature / test-coverage-merge
    • make test-coverage(unit → feature → merge を一括実行)
    • make test-browser(BrowserKit と PCOV の組み合わせで発生する
      segfault を避けるため pcov.enabled=0 で実行)
  • php.inipcov.enabled=1pcov.directory を設定

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant