PHPUnit代码覆盖率不起作用,总是说不正确的白名单配置

Chr*_*est 3 phpunit code-coverage symfony

Ich检查了网络上的几个来源,还有堆栈溢出,但到目前为止还无法解决.

继承我的配置:

<?xml version="1.0" encoding="UTF-8"?>

<!-- https://phpunit.de/manual/current/en/appendixes.configuration.html -->
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/6.0/phpunit.xsd"
     backupGlobals="false"
     colors="true"
     bootstrap="../../src/test.bootstrap.php"
     convertErrorsToExceptions="true"
     convertNoticesToExceptions="true"
     convertWarningsToExceptions="true"
     processIsolation="false"
     stopOnError="false"
     stopOnFailure="false"
     stopOnIncomplete="false"
     stopOnSkipped="false"
     stopOnRisky="false"
     verbose="true"
>
<!--printerFile="vendor/whatthejeff/emoji-phpunit-resultprinter/src/Emoji/PHPUnit/ResultPrinter.php"-->
<!--printerClass="Emoji\PHPUnit\ResultPrinter"-->
<php>
    <ini name="error_reporting" value="-1" />
    <server name="KERNEL_DIR" value="src/" />
    <env name="BOOTSTRAP_CLEAR_CACHE_ENV" value="testing"/>
</php>

<loggin>
    <log type="coverage-html" target="build/coverage"/>
    <log type="coverage-clover" target="build/logs/clover.xml"/>
    <log type="coverage-crap4j" target="build/logs/crap4j.xml"/>
    <log type="junit" target="build/logs/junit.xml" logIncompleteSkipped="false"/>
</loggin>

<testsuites>
    <testsuite name="Project Test Suite">
        <directory>src/*/*Bundle/Tests</directory>
        <directory>src/*/Bundle/*Bundle/Tests</directory>
    </testsuite>
</testsuites>

<filter>
    <whitelist>
        <directory>../src</directory>
        <exclude>
            <directory>src/*/*Bundle/Resources</directory>
            <directory>src/*/*Bundle/Tests</directory>
            <directory>src/*/Bundle/*Bundle/Resources</directory>
            <directory>src/*/Bundle/*Bundle/Tests</directory>
        </exclude>
    </whitelist>
</filter>
</phpunit>
Run Code Online (Sandbox Code Playgroud)

由于Build Server的限制,我需要使用以下命令调用phpunit:

./build/bin/phpunit.phar -c build/config/phpunit.xml --coverage-clover build/logs/clover.xml --coverage-crap4j build/logs/crap4j.xml --coverage-html build/coverage --coverage-xml build/logs/coverage.xml --log-junit build/logs/junit.xml --testdox-html build/testdox/testdox.html  --testdox-xml build/logs/testdox.xml src/ -v
Run Code Online (Sandbox Code Playgroud)

一切正常,但代码覆盖除了结果输出:

    PHPUnit 6.1.4 by Sebastian Bergmann and contributors.

    Runtime:       PHP 7.1.5-1+0~20170522123046.25+jessie~1.gbpb8686b with Xdebug 2.6.0-dev
    Configuration: /home/testcase/build-directories/build/config/phpunit.xml
    Error:         Incorrect whitelist config, no code coverage will be generated.

    ..................                                                18 / 18 (100%)

    Time: 945 ms, Memory: 6.00MB

    OK (18 tests, 68 assertions)
Run Code Online (Sandbox Code Playgroud)

由于单元测试本身正在工作,我有点恼火.由于Redis服务器尚未完全配置,因此可以忽略Reds消息(希望如此).

我正在使用oh-unit 6.1.4

请告诉我一个错误在我的配置中的位置

Ale*_*eri 5

尝试使用以下内容将白名单目录更改为您的phpunit:

<whitelist>
    <directory suffix=".php">./src</directory>
    <exclude>
        <directory>./src/*/*Bundle/Resources</directory>
        <directory>./src/*/*Bundle/Tests</directory>
        <directory>./src/*/Bundle/*Bundle/Resources</directory>
        <directory>./src/*/Bundle/*Bundle/Tests</directory>
    </exclude>
</whitelist>
Run Code Online (Sandbox Code Playgroud)