3

より複雑なPEARパッケージ()のバグを修正しようとしていますCodeCoverage。そのため、PEARパス内に存在しない開発バージョンが必要です。

c:\Programme\PHP\PEAR\PHP

別の場所に1つあり、ここでは例を示します。

c:\Dokumente und Einstellungen\hakre\PhpstormProjects\php-code-coverage\PHP\

インストールされたパッケージからディスクの別の場所にあるファイルだけに一時的に切り替える一般的な方法はありますか?

シンボリックリンクを配置しようとしましたがCodeCoverage.php、Windows XPでは不可能なリンクも必要なため、機能しません。

PEARには、この種のシナリオのためのある種の開発スイッチがありますか、それともそれを処理するのは各パッケージのビジネスであるというだけですか?

CodeCoverageパッケージをと一緒に使用していますPHPUnit

4

2 に答える 2

3

PEARディレクトリのにPHPのインクルードパスに追加することで、動作させることができます。

include_path = ".;c:\path\to\php-code-coverage;C:\programme\php\pear"
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

PHPUnitの呼び出しでは、標準パッケージ使用されますが、の開発バージョンが使用されCodeCoverageます。シンボリックリンクは必要ありません。php.iniを編集するだけで十分です。

于 2012-10-31T16:49:17.123 に答える
3

"Contributing" section of the PHPUnit github projectは、そのタスクを簡単にするためのランナースクリプトが含まれています。

そこからすべてのリポジトリをエーテルチェックアウトするか、必要なリポジトリが1つだけの場合は、ランナースクリプトを使用できます。

#!/ bin / bash

php -d include_path='.:../phpunit/:../dbunit/:../php-code-coverage/:../php-file-iterator/:../php-invoker/:.。 /php-text-template/:../php-timer:../php-token-stream:../phpunit-mock-objects/:../phpunit-selenium/:../phpunit-story/: / usr / local / lib / php'../phpunit/phpunit.php $ *

意図的にコードとしてフォーマットされていないため、全体が表示されます

..スクリプトを置き換えて/path/to/your/dev/folder/スクリプトを挿入し、/usr/local/bin/それを呼び出すことで、パスを絶対パスに適合させることができますphpunit-dev

次に、既存のすべてのフォルダーを自動的に取得し、見つからないものはすべて最後に梨のパスにフォールバックします。


開発セットアップをすばやく取得する別の方法は、composerからインストールしminimum-stability: dev、リポジトリの1つでリモートを変更することです:)

于 2012-10-31T19:12:29.473 に答える