【问题标题】:Pycharm is not recognizing breakpoints in non-test filesPycharm 无法识别非测试文件中的断点
【发布时间】:2011-07-12 05:01:04
【问题描述】:

一直在用Pycharm写一个服务器。

我有一些使用 Python 中的“unittest”库的单元测试。

我只是在运行测试,一切都很好,我可以在代码的任何地方设置断点。 昨天我开始通过调试器运行服务器。我发现我的断点不再起作用。从视觉上看,它们仍然存在,它们在各个方面看起来/行为都像一个工作断点,除了它们实际上不会导致执行中断,它们只是被忽略(就像它们被禁用一样)。

今天,当我再次尝试运行测试时,我观察到所有文件中的相同行为除了我的测试库中的那些。

我尝试了一个实验,将一个新文件添加到服务器代码中,其中包含一个简单的函数。 函数中的断点,从测试中调用函数,通过调试器运行测试,没有中断。 将文件复制到我的“测试”目录中,重置函数中的断点,将“导入”语句更改为指向测试文件的新位置,运行测试。现在它停在文件中的断点处。

我已经尝试了所有我能想到的基本“健全性检查”:退出 PyCharm。重新安装 PyCharm。删除 PyCharm 首选项。重启。我仍然得到完全相同的行为。

不管怎样,'run to cursor' 表现出同样的问题:在除测试文件之外的任何内容中,它只是不停地运行。

真正令人疯狂的是,昨天一切正常。当我运行测试时,至少断点在工作。

【问题讨论】:

    标签: breakpoints pycharm


    【解决方案1】:

    我自己解决了这个问题。

    在 Run->Edit Configurations 中,选择要测试的配置。

    在“Tests:Folder:”中,现有设置为 foo/bar/baz/my_project/tests。

    使用这个设置我遇到了问题:'tests' 下的断点工作,'my_project' 其余部分下的断点不工作。

    我将其更改为 foo/bar/baz/my_project。 现在一切正常,任何地方的断点都可以正常工作。

    我项目中的其他人在原始设置下工作正常:他们只指向“测试”目录,并且可以在任何地方设置断点。

    我不知道为什么我很特别,这对我来说失败了,但我有一个解决方法,我厌倦了与之抗争,所以......美好的时光。

    【讨论】:

      【解决方案2】:

      嘿,Doug,三件事可能有用也可能没用:

      1. 在早期的 1.0 和 1.0.1 版本中,我曾多次遇到同样的问题,并保存了调试配置 --- 重新创建调试配置修复了故障。敲木头,但我在 1.1.1 中没有遇到过这个问题。尚未尝试 1.2 候选版本。
      2. 一位同事遇到了类似的问题,但他不小心在文件的外部副本上设置了断点,而不是 PyCharm 正在执行的内容。
      3. 最后,我的经验是,如果您 ping their user forum 和/或 submit a YouTrack bug,JetBrains 人员会非常擅长回应问题。

      干杯, 抢

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-11-05
        • 2012-07-26
        • 2021-07-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-25
        相关资源
        最近更新 更多