如何选择PHPUnit用于代码覆盖的驱动程序?

时间:2015-11-01 19:09:49

标签: phpunit code-coverage phpdbg

我使用PHPUnit收到错误的代码覆盖率报告,我相信这是XDebug的错误。

如何配置PHPUnit以使用one of its other drivers,即PHPDBG?

(我正在使用PHPUnit 4.7.7和PHP 5.5.12)

1 个答案:

答案 0 :(得分:10)

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

一旦安装,你必须通过phpdbg二进制文件调用PHPUnit,我的位于' / usr / local / php7 / bin'所以我要使用的命令是

/usr/local/php7/bin/phpdbg -qrr phpunit -v

这假定您的“phpunit”'在你的环境路径中,使用你的“phpunit”的完整或相对路径。

我在我的项目源文件夹中通过composer安装了PHPUnit,这是' vendor'中的三个目录。文件夹所以我的命令将是

/usr/local/php7/bin/phpdbg -qrr ../../../vendor/bin/phpunit -v

有关更多信息,请参阅PHPDBG http://phpdbg.com/docs/introduction

的文档

希望这有帮助