我目前有一个phpunit.xml文件,如下所示:
<testsuites>
<testsuite name="Application Test Suite">
<directory suffix="Test.php">tests</directory>
</testsuite>
</testsuites>
<filter>
<whitelist processUncoveredFilesFromWhitelist="true">
<directory suffix=".php">src</directory>
</whitelist>
</filter>
我有些问题:
我是否正确地假设在我的<testsuite>
<directory suffix="Test.php">tests
检查该目录中与Test * .php相对应的文件?
我目前在 src 文件夹中有一个 .php 文件,其中包含一些HTML。 PHPUnit选择此文件并在运行单元测试时将其全部内容转储为输出。我想这是因为我使用processUncoveredFilesFromWhitelist
设置了白名单。
我想这会查看所有带有.php扩展名的文件,并检查它们是否已经过测试。
我可以简单地将白名单更改为我的测试目录,这解决了问题,但我想这会使我的CodeCoverage报告无法查看哪些类尚未经过测试?
当我还想在项目中包含我想要包含在某个地方的.php文件时,我该怎么办?我是否在phpunit.xml文件中写了一些内容来忽略这些文件?
答案 0 :(得分:1)
您可以使用以下内容排除该文件(以及任何其他不可测试的文件):
<testsuites>
<testsuite name="Application Test Suite">
<directory suffix="Test.php">tests</directory>
</testsuite>
</testsuites>
<filter>
<whitelist processUncoveredFilesFromWhitelist="true">
<directory suffix=".php">src</directory>
<exclude>
<file>/path/to/your_html_file.php</file>
</exclude>
</whitelist>
</filter>
在回答第一个问题时,Test.php是后缀,因此它会查找* Test.php。