PHPUnit で間違ったコード カバレッジ レポートが表示されます。これは XDebug のバグだと思います。
他のドライバーの 1 つ、つまり PHPDBGを使用するように PHPUnit を構成するにはどうすればよいですか?
(私は PHPUnit 4.7.7 と PHP 5.5.12 を使用しています)
PHPUnit で間違ったコード カバレッジ レポートが表示されます。これは XDebug のバグだと思います。
他のドライバーの 1 つ、つまり PHPDBGを使用するように PHPUnit を構成するにはどうすればよいですか?
(私は PHPUnit 4.7.7 と PHP 5.5.12 を使用しています)
PHPUnit は PHP ランタイム環境からドライバーを選択するため、PHPDBG で PHPUnit を実行するには、そのバイナリーをインストールする必要があります。
オプション '--enable-phpdbg' を使用して PHP をコンパイルする必要がありますが、これは PHP 5.6 以降の場合のみです。
PHP 5.4 以降のインストール手順は次のとおりです (これらはhttps://github.com/krakjoe/phpdbgから取得したものです)。
phpdbg をインストールするには、PHP インストール ソースに対してソースをコンパイルし、configure コマンドで SAPI を有効にする必要があります。
cd /usr/src/php-src/sapi
git clone https://github.com/krakjoe/phpdbg
cd ../
./buildconf --force
./configure --enable-phpdbg
make -j8
make install-phpdbg
インストールしたら、「/usr/local/php7/bin」にあるphpdbgバイナリ鉱山を介してPHPUnitを呼び出す必要があるため、使用するコマンドは次のとおりです
/usr/local/php7/bin/phpdbg -qrr phpunit -v
これは、「phpunit」が環境パスにあることを前提としています。それ以外の場合は、「phpunit」への完全パスまたは相対パスを使用します。
「ベンダー」フォルダーの3つのディレクトリにあるプロジェクトソースフォルダーにコンポーザーを介してPHPUnitをインストールしたので、コマンドは次のようになります
/usr/local/php7/bin/phpdbg -qrr ../../../vendor/bin/phpunit -v
詳細については、PHPDBG のドキュメントhttp://phpdbg.com/docs/introductionを参照してください。
お役に立てれば