我需要测试一系列子文件夹中的所有类。但是,在完成大型重构之前,我不想测试这些子文件夹中的其他文件。
我想测试的文件都是从class.
开始的,例如class.apis.php
、class.something.php
。
因此,为了运行我的测试,我有以下PHPUnit的氯化配置:
<?xml version="1.0" encoding="UTF-8"?>
<phpunit backupGlobals="true" backupStaticAttributes="true" colors="true"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true" convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="false" syntaxCheck="true" verbose="true"
strict="true">
<php>
<includePath>../</includePath>
</php>
<testsuites>
<testsuite name="MSBO Test Suite">
<directory>PHPUnit</directory>
</testsuite>
</testsuites>
<filter>
<whitelist addUncoveredFilesFromWhitelist="true">
<directory suffix=".php">../classes/</directory>
<directory suffix=".php">../modules/</directory>
<exclude>
<directory>../classes/external/</directory>
</exclude>
</whitelist>
</filter>
</phpunit>
但我找不到任何关于如何在白名单中添加前缀的信息。有什么想法吗?
我们使用不同的扩展,而不是前缀,所以我们有:
<directory suffix=".class">lib/UTIL</directory>
你可能可以在文件名过滤器中使用通配符,尽管我还没有尝试过。
<file>lib/UTIL/AJAX*.class</file>
相当古老的线程,但只是为了补充以前的响应。此功能是为PHPUnit 6.5.10添加的。您可以在以下网址查看相关更新:
- https://github.com/sebastianbergmann/phpunit/issues/3218
- https://github.com/sebastianbergmann/phpunit/commit/2d53bd5ae8ec6f81bb3be9d397f1f4cfac69ff97
也可在phpunit >v7.2
上使用(在v7.5.17
上测试并运行良好)。不确定添加了哪个特定版本。