I have recently configured VS code to debug PHP with xdebug. It works reliably with my application code but when I am running unit tests with PHPunit, my breakpoints are ignored.
My server is run inside a vagrant box.
My php.ini
file contains the following lines:
[xdebug]
zend_extension="/usr/lib/xdebug/xdebug-2.2.7/modules/xdebug.so"
xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.remote_connect_back=1
xdebug.remote_autostart=1
I use the PHP Debug VS Code extension.
This is my launch.json
config:
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"pathMappings": {
"/var/www/mysite.local/": "${workspaceFolder}"
},
"port": 9000,
"log": true
}
My unit tests run fine, for example, from within /var/www/mysite.local
, I can run:
phpunit --filter myTestMethod path/to/my/test/file/myTest.php
but while the test will run, a breakpoint I have within the test itself is consistently ignored and I cannot figure out why.
Has anybody had a similar issue? Is there a difference between how debugging works in the context of a normal application request and a unit test?