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を実行するために、phpunit.xmlのコンテンツをbuild.xmlに単純にコピーして貼り付けたくありません。

Phing のbuild.xmlのターゲットは次のようになります。

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

その phpunit は自動的に phpunit.xml を見つけて (端末に「phpunit」と入力して Enter キーを押すように手動で起動すると動作します)、それを使用します。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

可能な解決策の1つは

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

しかし、接続 phpunit と phing の周りの糖分がすべて欠落しています。

TestRunner はphingphpunitで完全に異なるため、他にエレガントなソリューションはありません。

于 2012-08-06T12:00:21.957 に答える