PHPUnit:创建自定义代码覆盖率报告者/记录器

时间:2018-06-14 10:51:01

标签: php phpunit

要在类似工具PHPMDPHPCS中进行语境设置,可以为结果输出指定自定义格式化程序,例如:

PHPMD:

 vendor/bin/phpmd test \\my\\namespace\\renderers\\phpmd\\AdamFormat phpmd.xml

PHPCS:

vendor/bin/phpcs --standard=phpcs.xml --report=./src/renderers/phpcs/AdamFormat.php

我希望为PHPUnit做同样的事情,但是因此得到了一个空白(调查,谷歌搜索,在这里搜索)。看看PHPUnit的代码,这对我来说似乎有点硬编码:

Code coverage handler

if (isset($arguments['coverageClover'])) {
    $this->printer->write(
        "\nGenerating code coverage report in Clover XML format ..."
    );
    try {
        $writer = new CloverReport;

Logging

if (isset($arguments['testdoxHTMLFile'])) {
    $result->addListener(
        new HtmlResultPrinter(

我没有发现docs中的任何其他地方。对我来说似乎是一个奇怪的缺陷。

所以有两个问题:

  1. 我正在读书吗? PHPUnit不支持这个吗?
  2. 假设“是的:不支持”,是否有任何人以非Heath Robinson的方式采取策略来规避这一点?
  3. 我意识到可以使用--coverage-php选项将结果作为PHP变量输出到另一个进程然后用来做[无论如何],但这对我来说似乎是一种由内而外的方法,并且属于希思罗宾逊类别。

0 个答案:

没有答案