Debugging 使用XDebug+进行调试;PHPStorm迫使我总是进入
我正在尝试调试我的Codeception测试 我的调试平台使用PHPStorm+XDebug从浏览器中使用右边的IDE键作为cookie时工作得非常好 但是,当尝试使用CLI调试codecept时,我遇到以下问题:Debugging 使用XDebug+进行调试;PHPStorm迫使我总是进入,debugging,phpstorm,xdebug,codeception,Debugging,Phpstorm,Xdebug,Codeception,我正在尝试调试我的Codeception测试 我的调试平台使用PHPStorm+XDebug从浏览器中使用右边的IDE键作为cookie时工作得非常好 但是,当尝试使用CLI调试codecept时,我遇到以下问题: 如果我在我的Cest类中设置一个断点,行为是正常的。我可以跳过函数并单击“恢复”停止调试 但每当我在代码(即控制器或命名空间类)中放置断点时,xdebug就变得不可用: 如果我尝试恢复、退出或跳过,xdebug将忽略我的请求,并始终进入当前行 这使得我的测试很难继续下去 我尝试过
- 如果我在我的Cest类中设置一个断点,行为是正常的。我可以跳过函数并单击“恢复”停止调试
- 但每当我在代码(即控制器或命名空间类)中放置断点时,xdebug就变得不可用:
<- step_over -i 41
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="step_over" transaction_id="41" status="break" reason="ok">
这是一步一步来,而不是一步一步来。那么也许是xdebug的一个bug
奇怪的是,这并不总是发生。在更改配置后,它有时不会发生,但随后错误似乎又回来了…我遇到了同样的问题,并能够通过删除.idea目录并让PHPStorm重新创建来修复它 这对我来说似乎是一个沉重的修复,经过一些尝试和错误之后,我能够将问题追溯到PHPStorm中定义的手表
您应该能够通过卸下所有手表来解决此问题。您可能需要让当前调试会话完成,但下一个调试会话应该可以正常工作。我也遇到了类似的问题。对我来说,无论我提出什么要求,PHPStorm总是跳出去
移除所有手表也解决了我的问题 我也遇到了同样的问题,除了我的Storm退出而不是退出(这导致了很短的调试经验)。在阅读您的解决方案后,我做的第一件事是重命名我的.idea目录。令人惊讶的是,它成功了(在我尝试了其他几种根本没有效果的解决方案之后)。然后我将目录命名为.idea,问题返回。在那之后,我试着把我所有的手表都取下来,瞧,它又开始工作了。非常感谢你,这让我快发疯了!这个问题与IDE本身无关。我在使用带有“php调试”扩展名的VScode时遇到了同样的问题。这个问题似乎与x-debug本身有关。这救了我一天