【问题标题】:Debugging pytests in Pycharm with pdb shows annoying console使用 pdb 在 Pycharm 中调试 pytest 显示烦人的控制台
【发布时间】:2018-05-15 09:24:44
【问题描述】:

我有一系列相当复杂的测试。不幸的是,内置的 Pycharm 调试器太慢了,无法处理它们。我试图让它更快,但任何尝试都失败了,所以我不得不求助于使用 pdb。

我的问题是,如果我使用 pycharm 运行测试并遇到 pdb 断点,出现的命令行非常烦人:

  • 它不支持代码完成(当然我用谷歌搜索过,但我的尝试失败了)。
  • 我什至不能按“向上”来再次获取最后一个命令
  • 最烦人:当我已经在命令行中写了一些代码并跳转到行首进行编辑时,光标会自动跳转到行尾。

我注意到当我不使用 pytest 时进入 pdb 调试模式时得到的不是 iPython 控制台。

您对如何解决这些问题有任何想法吗?理想情况下如何加速 Pycharm 调试器,或者如何在 pytest 中获取 iPython 控制台?

非常感谢您的帮助。提前致谢。

【问题讨论】:

    标签: python debugging pycharm pytest


    【解决方案1】:

    以下几点可能有助于您提高调试速度:

    1. 使用 Python 3.5/3.6。
    2. 如果您在 linux/macos 中运行,请安装 cython 扩展(您会收到提示)
    3. 此时使用最新的Pycharm,2017.3。
    4. 尝试简化测试。如果不可能,只需在 Pycharm 中创建一个特殊的运行程序并使用 pytest 的 -k 'pattern' 参数来运行调试过程所需的那些。

    此外,如果您使用的是 Pycharm 调试器,我不明白您为什么要调用 pdb。

    【讨论】:

    • 感谢您的回答。 1. 我已经使用 Python 3.6 2. 我在 Windows 上运行:/ 3. 也在这样做 4. 我正在使用 -k 模式运行单个测试。我对 pyomo 做了很多优化,但对于复杂性我无能为力。 5. 我没有使用 Pycharm 调试器,因为它太慢了。这就是我必须使用 pdb 的原因。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-15
    • 1970-01-01
    • 2020-03-22
    • 1970-01-01
    • 2017-04-04
    • 2018-05-12
    • 2020-08-31
    相关资源
    最近更新 更多