定制 mgdsoft/bitbucket-pr-coverage 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

mgdsoft/bitbucket-pr-coverage

最新稳定版本:0.0.1

Composer 安装命令:

composer require mgdsoft/bitbucket-pr-coverage

包简介

Create code coverage report in bitbucket

README 文档

README

A tool to analyze PHPUnit code coverage for modified lines in Bitbucket pull requests.

Description

This tool analyzes PHPUnit code coverage reports and git diffs to calculate the test coverage percentage of modified lines in a pull request. It then creates a coverage report in Bitbucket, showing the overall coverage percentage and highlighting uncovered lines.

Key features:

  • Focuses only on modified/new lines in the pull request
  • Creates a coverage report directly in Bitbucket
  • Adds annotations for uncovered lines
  • Marks the report as PASSED if coverage is > 80%, otherwise FAILED

annotation report

Sometimes your code may have many lines without tests, but you can quickly disable them.

hide_annotation

Installation

composer require mgdsoft/bitbucket-pr-coverage

Usage

Basic Usage

php vendor/bin/pr-coverage coverage_report \
  --coverage_report_path=/path/to/clover.xml \
  --api_token=your-bitbucket-token

Using Environment Variables

You can also set the following environment variables instead of passing command-line options:

  • BITBUCKET_PR_ID: Pull request ID (default in Bitbucket pipelines)
  • BITBUCKET_WORKSPACE: Bitbucket workspace/owner (default in Bitbucket pipelines)
  • BITBUCKET_REPO_SLUG: Repository name (default in Bitbucket pipelines)
# generate clover.xml with PHPUnit
php -d memory_limit=-1 bin/phpunit --log-junit ./test-reports/phpunit.junit.xml --coverage-clover ./test-reports/phpunit.coverage.xml

export BITBUCKET_PR_ID=123
export BITBUCKET_WORKSPACE=your-workspace
export BITBUCKET_REPO_SLUG=your-repo
export BITBUCKET_TOKEN=your-bitbucket-token

php bin/pr-coverage coverage_report --coverage_report_path=$BITBUCKET_CLONE_DIR/test-reports/phpunit.coverage.xml

How It Works

  1. Reads the PHPUnit coverage report (XML format)
  2. Generates a git diff between the current branch and the target branch
  3. Identifies which lines were modified in the pull request
  4. Calculates the coverage percentage for the modified lines
  5. Creates a coverage report in Bitbucket
  6. Adds annotations for uncovered lines

Requirements

  • PHP 8.0 or higher
  • PHPUnit XML coverage report
  • Bitbucket API token with appropriate permissions

License

MIT License

Credits

This project is a fork of orbeji /phpunit-pr-coverage-check with updated dependencies and code improvements. Thanks to the author Orbeji for their work.

统计信息

  • 总下载量: 4
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-06-24

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固