如何在匹配模式的文件夹上运行phpunit

时间:2017-11-09 11:30:22

标签: phpunit

我有像这样的文件夹结构

root_folder
    folder1
      _unittest
   <other files>
folder2
   _unittest
   <other files>

现在我要做的是从根目录运行phpunit,找到名为_unittest的所有子文件夹中的文件

有人可以建议如何做到这一点(也许使用xml配置文件?)

由于

2 个答案:

答案 0 :(得分:1)

您确实可以在phpunit.xml.dist中使用testsuites指令,但是该指令允许您使用通配符并在一个测试套件中轻松定位子目录。例如,你可以这样做:

<testsuites>
    <testsuite name="only-unit-test">
        <directory suffix=".php">./*/_unittest/</directory>
    </testsuite>
    <testsuite name="all-test">
        <directory suffix=".php">./</directory>
    </testsuite>
</testsuites>

phpunit将遍历所有子文件夹并检查 _unittest 文件夹中的测试用例。它避免为配置中的每个文件夹创建一个条目。

答案 1 :(得分:0)

当设置xml配置时,PHPunit将仅运行来自给定目录集的文件

<testsuites>
    <testsuite name="test-suite">
        <directory suffix=".php">./folder1/_unittest</directory>
        <!-- other listing of directories for tests -->
    </testsuite>
</testsuites>

如果您的folder2root_folder处于同一级别,那么您可能需要重新考虑结构,或将测试配置放在不同的目录中。