talesoft/tale-dev-tool

Talesoft 单元测试、覆盖率工具和代码风格工具

0.2.5 2018-08-22 22:33 UTC

README

Packagist License CI Coverage

Tale Dev Tool

什么是 Tale Dev Tool?

它是基于 phug/dev-tool 的分支,专为 tale-* 组件的需求定制。

您可以使用它来为任何基于 composer 的 PHP 项目。

它为 PHPUnit、PHP CodeSniffer 和 PHPDocumentor 提供默认配置。

它还可以检查代码覆盖率百分比并将覆盖率报告给 CodeClimate。

安装

通过 Composer 安装

composer require talesoft/tale-dev-tool --dev

使用方法

在开发过程中,您将主要这样调用工具

./vendor/bin/tale-dev <command> <arguments>

可用命令

install

更新 composer 并安装 composer 依赖项

check

按照此顺序运行 unit-tests:runcode-style:checkcoverage:check,并且一旦其中一个命令失败就失败。

返回代码是失败命令的返回代码。

如果设置了 --report,则此命令将生成代码覆盖率数据并将其报告给 code-climate。

我通常有一个 .travis.yml 设置,其中包含类似以下内容

addons:
    code_climate:
        repo_token: <your_code_climate_repo_token>

检查此存储库的 .travis.yml 以获取灵感。您还可以检查例如 tale-stream 的存储库,以了解它在实际库中的使用情况。

注意:这是报告覆盖率的 过时 方法,我需要更新它。尽管如此,您仍然可以忽略它,尽管它可能仍然会在一段时间内工作。

code-style:check

自动扫描代码中关于 PSR-2 的问题,并在需要的情况下尝试修复它们。

如果找到,则使用默认配置或本地配置运行 phpcs

code-style:fix

自动修复关于 PSR-2 的代码问题。

如果找到,则使用默认配置或本地配置运行 phpcbf

unit-tests:run

运行位于 ./tests 的单元测试。

您可以通过传递 --coverage-text--coverage-clover=<targetXmlPath> 来生成代码覆盖率信息。

如果设置了,则将 --filter--group--testdox 选项传递到 PHPUnit。

coverage:check

检查现有的代码覆盖率数据,如果未达到特定的百分比覆盖率(默认为 80%),则失败。

接受 --input-file=<targetXmlPath>,该路径指向由 unit-tests:run --coverage-clover=<targetXmlPath> 生成的覆盖率文件。

coverage:report

将覆盖率数据报告给 CodeClimate。

接受 --input-file=<targetXmlPath>,该路径指向由 unit-tests:run --coverage-clover=<targetXmlPath> 生成的覆盖率文件。