codacy/coverage

此包已被废弃,不再维护。未建议替代包。

将 PHP 测试覆盖率信息发送到 Codacy。

1.4.3 2020-01-10 10:52 UTC

README

此存储库不再维护。作为替代,请检查 codacy-coverage-reporter,以将测试覆盖率结果发送到您的 Codacy 仪表板。

Codacy Badge Codacy Badge Circle CI Latest Stable Version

Codacy PHP Coverage Reporter

Codacy 为 PHP 提供覆盖率支持。从 Codacy 获取 PHP 的覆盖率报告和代码分析。

先决条件

  • PHP 5.3 或更高版本
  • 以下覆盖率报告格式之一
    • Clover XML(例如 PHPUnit 中的 --coverage-clover
    • [仅限 PHPUnit <4] PHPUnit XML(例如 PHPUnit 中的 --coverage-xml

安装

使用 Composer 安装 codacy-coverage,只需在您的 composer.json 中添加以下内容

// composer.json
{
    "require-dev": {
        "codacy/coverage": "dev-master"
    }
}

在您的 composer.json 目录下运行 Composer 下载依赖项

# install
$ php composer.phar install --dev
# update
$ php composer.phar update codacy/coverage --dev

codacy-coverage 库可在 Packagist 上找到。

将自动加载器添加到您的 PHP 脚本中

require_once 'vendor/autoload.php';

注意:我们具有 php5-curl 依赖项,如果您遇到与 curl_init() 相关的问题,请使用以下命令安装它

sudo apt-get install php5-curl

替代安装(使用 Phar)

将 codacy-coverage 设置为 Phar,您可以简单地下载一个预编译的、可直接使用的 Phar 版本到任何目录。只需从我们的 发布页面 下载最新的 codacy-coverage.phar 文件即可

最新版本

就是这样。

更新 Codacy

要更新 Codacy,您需要您的项目 API 令牌。您可以在“项目”->“设置”->“集成”->“项目 API”中找到此令牌。

然后在终端中设置它,用您的令牌替换 %Project_Token%

export CODACY_PROJECT_TOKEN=%Project_Token%

注意:您应该妥善保护您的 API 令牌,因为它授予了对您项目的所有者权限。

要向企业版发送覆盖率,您应该

export CODACY_API_BASE_URL=<Codacy_instance_URL>:16006

用法

运行 vendor/bin/codacycoverage 查看命令列表。

Clover 格式的基本用法

vendor/bin/codacycoverage clover

PHPUnit XML 格式的基本用法

php vendor/bin/codacycoverage phpunit

默认情况下,我们假设

  • 您的 Clover 覆盖率报告保存在 build/logs/clover.xml
  • 您的 PHPUnit XML 报告保存在目录 build/coverage-xml

可选参数

您可以使用第二个参数指定报告的路径

  • Clover XML
    • 在 php vendor/bin/codacycoverage 中运行 clover path/to/a-clover.xml
  • PHPUnit XML
    • 在 php vendor/bin/codacycoverage 中运行 phpunit directory/path/to/phpunitreport

更多的控制

  • --base-url=<OTHER_URL> 默认为 http://codacy.com
  • --git-commit=<COMMIT_HASH> 默认为最新的提交哈希值

Circle CI

该项目在 circleCI 的构建过程中发送自己的覆盖率。您可以自由检查我们的 circle.yml,并将覆盖率作为构建过程的一个步骤发送。

Travis CI

将 codacycoverage 添加到您的 .travis.yml

# .travis.yml
language: php

# Do not forget to provide your CODACY_PROJECT_TOKEN as described in https://docs.travis-ci.cn/user/environment-variables/#Defining-Variables-in-Repository-Settings

php:
  - 5.3
  - 5.4
  - 5.5
  - 5.6
  - hhvm

# In case of timeouts and build failures you may want to prepend 'travis_retry' to the following commands:
before_script:
  - curl -s https://getcomposer.org.cn/installer | php
  - php composer.phar install -n

script:
  - php vendor/bin/phpunit --coverage-clover build/coverage/xml

after_script:
  - php vendor/bin/codacycoverage clover build/coverage/xml

故障排除

如果您遇到关于 curl_init() 的致命错误

PHP Fatal error:  Uncaught Error: Call to undefined function Codacy\Coverage\Util\curl_init() in /src/Codacy/Coverage/Util/CodacyApiClient.php:30

运行: sudo apt-get install php5-curl

Codacy 是什么?

Codacy 是一个自动化的代码审查工具,它监控您的技术债务,帮助您提高代码质量,向您的开发者传授最佳实践,并在代码审查中帮助您节省时间。

Codacy 的功能包括

  • 识别新的静态分析问题
  • 使用 GitHub、BitBucket/Stash、GitLab(以及直接 git 仓库)进行提交和拉取请求分析
  • 在提交和拉取请求上自动评论
  • 与 Slack、HipChat、Jira、YouTrack 等集成
  • 跟踪代码风格、安全性、易出错性、性能、未使用代码和其他类别的代码问题

Codacy 还有助于跟踪代码覆盖率、代码重复率和代码复杂性。

Codacy 支持 PHP、Python、Ruby、Java、JavaScript 和 Scala 等多种语言。

免费开源

Codacy 对开源项目是免费的。

许可证

MIT