如何在Windows上用Python + Django + PyCharm更快调试?

3 投票
2 回答
1593 浏览
提问于 2025-04-28 03:00

在PyCharm中调试Django。

当我在调试器中运行任何东西时,它运行得很慢。

Django的启动时间相当长。

别误会,我很喜欢PyCharm,因为它有很多功能,可以让调试过程变得舒适……而且Python的调试确实比其他语言(比如C语言)简单得多,可能也快。但即使我已经对我的PostgreSQL数据库进行了优化,以便于测试(优化PostgreSQL以加快测试),即使我有固态硬盘和i7四核CPU,即使我特别告诉我的杀毒软件不要碰C:\Python27目录和我的项目目录,它还是很慢。

有没有什么办法可以加快调试速度?

我希望能在进程启动时间上看到改进,因为我最常用的场景是调试一个单独的单元测试。

暂无标签

2 个回答

1

我之前也遇到过同样的问题,直到我发现Django和PyCharm允许你每次按下调试按钮时只运行单个测试,而不是每次都运行完整的测试套件。

要做到这一点,只需在PyCharm中编辑你的调试配置。把你的 target 改成指向某个模块、类,甚至是你测试文件中某个深层次的方法。

为了做到这一点,确保你的目录是模块(比如说,目录里有一个 __init__.py 文件)。现在你可以用以下格式来指定具体的目标:

django_app.tests_module.test_case.test_method

很明显,最终的目标“路径”取决于你项目的组织结构。

别忘了在完成实现后把目标改回来,这样在推送代码之前就能运行所有的测试了;)

3

正常运行你的Python代码,但在代码中使用pdb调试工具。可以这样做:

... code before ...
import pdb; pdb.set_trace()
... code after ...

这样做会让代码在那个地方暂停。你需要按下c(继续)、q(退出)或n(下一步)来继续执行。你还可以按l来测试表达式和查看当前的位置。

代码可能会运行得更快,但调试的时候可能会更麻烦。

撰写回答