在 Laravel Homestead 中,我已经能够使用 Xdebug 进行单元测试、功能测试、浏览器浏览等。
但当我尝试使用 Xdebug for Dusk 时,它会挂起(在测试/浏览器文件夹中进行测试)。
我认为这些问题可能会有所帮助,但我仍然没有得到它的工作:
我尝试过各种方法,包括:
export XDEBUG_CONFIG="idekey=netbeans-xdebug remote_connect_back=0 remote_host=10.0.2.2"
php artisan dusk
and
export XDEBUG_CONFIG="idekey=netbeans-xdebug remote_host=10.0.2.2"
php -dxdebug.remote_autostart=on -dxdebug.remote_connect_back=off -dxdebug.remote_host=10.0.2.2 artisan dusk
和更多。
我在 Netbeans 中启用了“在第一行停止”调试选项,并且 Netbeans 确实成功地在第一个可执行 PHP 行处停止artisan
file.
因此我认为export XDEBUG_CONFIG="idekey=netbeans-xdebug remote_connect_back=0 remote_host=10.0.2.2"
已正确设置。
但是,当我单击“播放”按钮以允许代码继续运行后,Netbeans 只是在右下角显示“netbeans-xdebug running”,而控制台只是挂起,光标在此行下方闪烁:php artisan dusk tests/Browser/ExampleTest.php
我需要如何更改 Xdebug 的使用才能使其在 Dusk 中也能工作?
它不起作用,因为 Dusk 在单独的进程中执行实际的 PHPUnit 测试,所以它不知道XDEBUG_CONFIG
.
原则上,Dusk 测试在直接执行时仍然有效(phpunit tests/Browser/ExampleTest.php
)。主要特点是php artisan dusk
是定制的.env.dusk[.local]
files.
如果您不需要,您可以尝试直接致电他们。那么 Xdebug 的行为方式应该与所有其他 PHPUnit 测试的行为方式相同。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)