PHPUnit:仅针对一个测试套件进行过滤

时间:2013-02-21 12:00:17

标签: configuration filter phpunit test-suite

在PHPUnit中,可以在不同的测试套件中组织测试:

<phpunit bootstrap="Bootstrap.php">
    <testsuites>
        <testsuite name="zf2sandbox">
            <directory>./AlbumTest</directory>
        </testsuite>
    </testsuites>
</phpunit>

此外,您可以定义像

这样的过滤器
<filter>
    <whitelist>
        <directory suffix=".php">/var/www/sandbox/zf2sandbox/module/Album/src/Album/</directory>
    </whitelist>
</filter>

现在我想结合这两个胎儿。我们不允许将filter标记放入testsuite(过滤器​​只会被忽略)。

<phpunit bootstrap="Bootstrap.php">
    <testsuites>
        <testsuite name="zf2sandbox">
            <directory>./AlbumTest</directory>
            <filter>
                <whitelist>
                    <directory suffix=".php">/var/www/sandbox/zf2sandbox/module/Album/src/Album/</directory>
                </whitelist>
            </filter>
        </testsuite>
    </testsuites>
</phpunit>

是否有另一种方法可以为每个testsuite定义过滤器(whilists,黑名单等)?

1 个答案:

答案 0 :(得分:1)

您是否尝试在filter标记内添加testsuite,因为在您的示例中,它位于testsuites标记中。即:

<phpunit bootstrap="Bootstrap.php">
    <testsuites>
        <testsuite name="zf2sandbox">
            <directory>./AlbumTest</directory>
            <filter>
                <whitelist>
                    <directory suffix=".php">/var/www/sandbox/zf2sandbox/module/Album/src/Album/</directory>
                </whitelist>
            </filter>
        </testsuite>
    </testsuites>
</phpunit>