cloak/coverallskit

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

PHP 客户端,用于 coveralls.io

2.3.3 2016-04-17 08:54 UTC

README

Build Status Circle CI Build Status

Stories in Ready Scrutinizer Code Quality Coverage Status Dependency Status

Latest Stable Version License

CoverallsKit 是用于将代码覆盖率报告传输到 coveralls 的库。
此库适用于 PHP5.5 或更高版本。

要求

  • PHP >= 5.5
  • Xdebug >= 2.2.2

安装

使用 composer 的安装方式。

  1. 安装 composer

  2. 安装包。

     composer require cloak/coverallskit --dev
    

基本用法

您可以使用 coverallskit/CoverallsReportBuilder 生成一个 json 文件。
只需设置已执行的行的代码覆盖率。
通过使用 HHVMxdebug 可以轻松地获取代码覆盖率。

$travis = new TravisCI( new Environment($_SERVER) );
$service = new CIService($travis);

$builder = new CoverallsReportBuilder();
$builder->token('your repository token')
	->service($service)
	->repository(new GitRepository(__DIR__ . '/../'));

$source = new SourceFile('path/to/file');
$source->addCoverage(CoverageResult::executed(1));	//The first line was executed
$source->addCoverage(CoverageResult::unused(2));	//The second line is not executed
$source->addCoverage(CoverageResult::executed(3));	//The third line is executed

$builder->addSource($source);
$builder->build()->saveAs(__DIR__ . '/tmp/coverage.json');

使用配置文件

如果您使用配置文件,则可以更容易地发送报告。

use coverallskit\BuilderConfiguration;
use coverallskit\CoverallsReportBuilder;

$configuration = BuilderConfiguration::loadFromFile('coveralls.toml');
$builder = CoverallsReportBuilder::fromConfiguration($configuration);
$builder->build()->save()->upload();

配置文件格式

还可以使用配置文件。
文件格式为 toml 格式

token = "{api-token}"
service = "travis-ci"
repositoryDirectory = "."

[reportFile]
output = "script/coveralls.json"

[reportFile.input]
type = "lcov"
file = "script/report.lcov"

文件格式

名称 必需 默认 描述
token 可选 COVERALLS_REPO_TOKEN coveralls.io API 令牌。如果未指定,则使用环境变量 COVERALLS_REPO_TOKEN
service 可选 travis-ci CI(持续集成)服务名称。您可以使用 travis-citravis-procircle-cidrone.iocodeship
reportFile 可选 请参阅 reportFile 部分
repositoryDirectory 可选 . git 仓库的目录路径。将指定从包含配置文件的目录开始的相对路径。

reportFile

imput
名称 必需 默认 描述
type 可选 将指定代码覆盖率报告中文件类型。可以指定 lcovclover
file 可选 coveralls.json 将指定代码覆盖率报告文件。
output

将指定要发送到 coveralls.io 的 json 文件名。
将指定从包含配置文件的目录开始的相对路径。

Robo 任务

支持 robo 任务,因此您可以轻松发送报告。
有关更多信息,请参阅 robo-coveralls-kit

详细文档

仅运行单元测试

composer test

如何运行示例

vendor/bin/robo example:basic