首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用XDebug + PHPStorm进行调试时,我必须始终执行以下步骤

使用XDebug + PHPStorm进行调试时,我必须始终执行以下步骤
EN

Stack Overflow用户
提问于 2015-06-03 05:50:25
回答 3查看 1.4K关注 0票数 3

我正在尝试调试我的协同欺骗测试。

我使用PHPStorm + XDebug的调试平台在使用以正确的IDE键作为cookie的from浏览器时工作得很好。

但是,当尝试使用CLI调试codecept时,我遇到以下问题:

  • 如果我在Cest类中放置一个断点,行为是正常的。我可以跳过函数并单击“恢复”停止调试。
  • 但是,每当我在代码中放置一个断点(即控制器或命名空间类)时,xdebug就变得不可用:

如果我试图通过 request Out一步,xdebug将忽略我的请求,并且总是逐步进入当前行。

这使得我的测试很难继续下去。

我试过使用两个平台:我通常的流浪者+ nginx + php5-fpm (用远程调试)和wamp (本地调试)。

任何帮助都将不胜感激!

--

更新:--好吧,这与协同欺骗无关。我试过使用PHPUnit进行测试,结果也是如此。似乎也不是CLI的问题,因为我尝试从浏览器调试PHPUnit,但没有成功。

我认为这可能是一个PHPStorm错误,但是看看xdebug日志,我看到正确的方法被调用:

代码语言:javascript
复制
<- 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">

step_over被称为step_into,而不是step_into。所以也许是一个带有xdebug的bug?

奇怪的是,这种事并不总是发生。在改变了配置后,它有时不会发生,但是bug似乎又回来了.

EN

回答 3

Stack Overflow用户

发布于 2017-01-06 15:17:21

我也遇到了一个类似的问题。对我来说,无论我提出什么要求,PHPStorm总是跳出来。

移除所有手表也为我解决了这个问题!

票数 9
EN

Stack Overflow用户

发布于 2015-08-07 15:41:01

我遇到了同样的问题,并且能够通过删除.idea目录并让PHPStorm重新创建它来修复它。

对我来说,这似乎是一个棘手的问题,经过一些尝试和错误之后,我能够将问题追溯到在PHPStorm中定义的手表。

你应该能够通过移除所有的手表来解决这个问题。您可能需要让当前的调试会话完成,但下一个会话应该能够正常工作。

票数 4
EN

Stack Overflow用户

发布于 2022-08-17 15:10:19

我也有过类似的问题。PHP在Ubuntu系统上运行。无论我对IDE做了什么,当我试图跨出它时,它都会出现奇怪的错误(例如,Call to a member function ... on unknown --但是在PHP中没有未知的东西,所有东西都是空的,或者有标量类型或对象类型,所以没有意义)。

经过一些尝试,我更新了系统上的所有内容,包括PHP和Xdebug版本,并进行了修复。

代码语言:javascript
复制
sudo apt update
sudo apt upgrade

在那之后,它就像它应该的那样工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30611816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档