当我为我的 PHP 项目生成代码覆盖率时,我总是得到 Symfony 自动加载器。
我尝试将其添加到我的 PHPUnit 配置中,但没有成功:
<filter>
<blacklist>
<directory>/Symfony/Component</directory>
</blacklist>
</filter>
当我为我的 PHP 项目生成代码覆盖率时,我总是得到 Symfony 自动加载器。
我尝试将其添加到我的 PHPUnit 配置中,但没有成功:
<filter>
<blacklist>
<directory>/Symfony/Component</directory>
</blacklist>
</filter>
首先你没有指定后缀属性来搜索黑名单中的特定类型的文件
所以应该是
<filter>
<blacklist>
<directory suffix=".php">/Symfony/Component</directory>
</blacklist>
</filter>
如果这对您不起作用,那么您可以在白名单块中使用排除标记
<filter>
<whitelist>
<directory suffix=".php">../src/library/</directory>
<!-- add more directories -->
<exclude>
<directory suffix=".php">./Zend/</directory>
<!-- add more directories with relative or absolute path -->
</exclude>
</whitelist>
</filter>
我正在使用作曲家并尝试了几种变体,包括白名单中的排除:
我的目录结构是这样的:
...
/project/tests
/project/vendor
/project/vendor/composer
...
我试图让白名单工作:
<whitelist>
<exclude>
<directory suffix=".php">..\vendor\composer\</directory>
<directory suffix=".php">../vendor/composer/</directory>
<directory suffix=".php">..\composer\</directory>
<directory suffix=".php">../composer/</directory>
</exclude>
</whitelist>
那没有用。但这确实:
<filter>
<blacklist>
<directory suffix=".php">../vendor/composer</directory>
</blacklist>
</filter>
我的配置 xml 文件与在 composer 的自动加载器中加载的引导文件一起位于测试文件夹中。
<?php
require_once(__DIR__. str_repeat(DIRECTORY_SEPARATOR. '..', 1) . DIRECTORY_SEPARATOR . 'vendor'. DIRECTORY_SEPARATOR . 'autoload.php');