4

我有一个现有的phpunit.xml(phpunit 的配置文件),如下所示:

<phpunit backupGlobals="false"
    backupStaticAttributes="false"
    bootstrap="./tests/bootstrap.php"
    convertErrorsToExceptions="true"
    convertNoticesToExceptions="true"
    convertWarningsToExceptions="true"
    strict="true" 
    verbose="true"
    colors="true">

    <testsuites>
        <testsuite name="My Tests">
            <directory>./tests</directory>
        </testsuite>
</testsuites>
</phpunit>

正如DRY所说,我不想简单地将phpunit.xml的内容复制并粘贴到我的build.xml以使用相同的配置运行 phpunit。

我在build.xml中的 Phing 目标如下所示:

<target name="unit-test">
    <phpunit printsummary="true" />
</target>

即使那个 phpunit 应该自动找到 phpunit.xml (当我手动启动它时,就像在我的终端中输入“phpunit”并按回车一样,它可以工作)并使用它,在 phing 的情况下,输出如下所示:

[phpunit] Total tests run: 0, Failures: 0, Errors: 0, Incomplete: 0, Skipped: 0, Time elapsed: 0.00122 s

那么有什么办法,如何达到所描述的行为?

4

2 回答 2

9

从带有配置属性的phing 2.4.13开始就有可能:

<phpunit configuration="path/to/phpunit.xml"/>
于 2013-02-18T08:51:21.247 回答
2

一种可能的解决方案是

<exec command="phpunit" logoutput="/dev/stdout" />

但它缺少连接 phpunit 和 phing 的全部内容。

恐怕没有其他优雅的解决方案,因为 TestRunner 在phingphpunit中完全不同。

于 2012-08-06T12:00:21.957 回答