universetech-inc / phpunit-merger
将多个PHPUnit报告合并到一个文件中
1.1.5
2024-09-02 07:05 UTC
Requires
- php: ^8.0
- ext-dom: *
- ext-json: *
- ext-simplexml: *
- phpunit/php-code-coverage: ^9.0 || ^10.0
- symfony/console: >=2.7 <8.0
- symfony/finder: >=2.7 <8.0
Requires (Dev)
- php-parallel-lint/php-parallel-lint: ^1.4
- phpspec/prophecy: ^1.0
- phpunit/phpunit: ^9.3 || ^10.0
- symfony/filesystem: >=2.7 <8.0
Suggests
- friendsofphp/php-cs-fixer: Tool to automatically fix PHP coding standards issues
This package is auto-updated.
Last update: 2024-09-02 07:06:42 UTC
README
有时需要运行多个PHPUnit实例来执行项目的所有测试。不幸的是,每次运行都会生成自己的覆盖率报告和日志文件。PHPUnit没有提供合并多个运行报告的支持。
本项目提供了两个命令来合并覆盖率文件和日志文件。它被设计用来将合并后的报告提供给例如SonarQube Scanner进行进一步处理。
安装
使用Composer安装测试框架。
$ composer require --dev nimut/phpunit-merger
Composer将包添加到composer.json中的dev要求,并安装包及其依赖项。
使用方法
覆盖率
覆盖率命令将包含PHP_CodeCoverage对象的文件合并为Clover XML格式的单个文件。
$ vendor/bin/phpunit-merger coverage <directory> [--html=<directory>] [<file>]
参数
directory
: 包含一个或多个PHP_CodeCoverage对象的文件所在的目录file
: 存储合并结果的文件。默认:标准输出
选项
html
: 存储HTML报告的目录lowUpperBound
: (可选)用于HTML格式的lowUpperBound值highLowerBound
: (可选)用于HTML格式的高LowerBound值
日志
日志命令将JUnit XML格式的文件合并为JUnit XML格式的单个文件。
$ vendor/bin/phpunit-merger log <directory> <file>
参数
directory
: 提供包含一个或多个JUnit XML格式文件的目录file
: 存储合并结果的文件