如何告诉 PyCharm 在测试文件上运行 pytest 而不是 doctests

问题描述

在模块的测试套件中,一些 test_foo.py 文件具有在其文档字符串中包含 doctests 模式的辅助函数。这会导致 PyCharm 在选择该文件中的函数并尝试通过上下文菜单调试该函数时提供 Debug 'Doctests in test_foo'。无论该函数是在任何实际的 test_...() 函数之前还是在文件末尾都无关紧要,仅存在具有 doctests 模式的单个文档字符串就会导致 PyCharm 表现出这种行为。

例如,如果我只是将所有 >>> ... 更改为 />>> ...(以削弱 doctests 搜索),那么测试文件的行为与预期相同:函数上的上下文菜单提供 {{ 1}}。

如果两者都可行,有没有办法告诉 PyCharm 将 Debug 'pytest for test_foo.test_function' 优先于 pytest

解决方法

尝试运行 -> 运行 ... 菜单选项。弹出窗口应该有多种选择,包括 pytest

enter image description here

请在 PyCharm 的问题跟踪器 https://youtrack.jetbrains.com/issue/PY-35985

中为相应的票投票