记一次在本地环境测试UT引起的系列问题
由于想搞明白项目中使用到的UT是怎么执行的,在本地项目根目录下执行命令
php test/runTest.php -m'community' -f'CategoryControllerTest::testCategoryConfigV2Action'
结果报了:
No code coverage driver is available
百度后得知没有装Xdebug,打开phpinfo看确实没有(php -i | grep xdebug亦可),于是在本地装xdebug。
百度安装xdebug,跟着人家下载了xdebug2.6.0,然后cd 到xdebug目录下执行
phpize
结果一直报
cannot found config.m4
后来发现原来xdebug目录下还要cd进一层xdebug才是真的目录(这里真想敲死自己,因为这个地方足足卡了我一个小时)。
终于phpize通过了,继续编译安装三板斧,执行到make命令的时候,又报出一堆错误(大意就是需要6个参数只给了5个)。
百度后在stackoverflow上看到原来是版本太低了,本地用的是php7.3.8, 上面人家推荐php7.3要安装xdebug2.7.0beta版本。
得,直接安装最新的吧,于是这次直接上官网下载安装了xdebug2.9.5。
接着也是按照网上教程配置php.ini
当然最后别忘了重启php-fpm
现在执行UT就没问题啦~