2

PHPunit 3.7.1 PHP 5.3.14 Windows 7

使用 cmd 我“cd”到 phpunit.xml 所在的目录并运行

phpunit -c phpunit.xml

但这不会产生任何代码覆盖率。

phpunit.xml:

<phpunit
bootstrap="./bootstrap.php"
verbose="true"
>
    <testsuites>
        <testsuite name="Test Suite">
            <directory suffix=".php">./Base/src/</directory>
            <filter>
                <whitelist addUncoveredFilesFromWhitelist="true">
                    <directory suffix=".php">../src</directory>
                    <exclude>
                        <directory suffix=".php">../../vendor</directory>
                    </exclude>
                </whitelist>
            </filter>
            <logging>
                <log type="coverage-html" target="./CodeCoverage/"/>
            </logging>
        </testsuite>
    </testsuites>
</phpunit>

当我跑步时

phpunit -c phpunit.xml --coverage-html CodeCoverage

这工作得很好,除了过滤器中的任何东西似乎都不起作用。

我在这里做错了什么?

4

1 回答 1

4

我不知道 phpunit 是否支持在测试套件中定义过滤器和日志记录。自己定义它应该有效:

<phpunit
bootstrap="./bootstrap.php"
verbose="true">
    <testsuites>
        <testsuite name="Test Suite">
            <directory suffix=".php">./Base/src/</directory>
        </testsuite>
    </testsuites>
    <filter>
        <whitelist addUncoveredFilesFromWhitelist="true">
            <directory suffix=".php">../src</directory>
            <exclude>
                <directory suffix=".php">../../vendor</directory>
            </exclude>
        </whitelist>
    </filter>
    <logging>
        <log type="coverage-html" target="./CodeCoverage/"/>
    </logging>
</phpunit>
于 2012-12-03T17:23:11.603 回答