gpt4 book ai didi

python - 如何使用 PyCharm 运行文档测试?

转载 作者:IT老高 更新时间:2023-10-28 20:34:43 25 4
gpt4 key购买 nike

在 PyCharm IDE 中,如果我右键单击带有 doctest 的函数/方法,有时右键菜单会给我选项:“Run 'Doctest my_function_name'”,有时相反,右键菜单只提供运行整个文件的选项(不是作为 doctest)。

什么决定什么时候会给出“run doctest”选项,什么时候不会?有没有办法以一种或另一种方式强制它?

最佳答案

PyCharm 中运行一个模块(或其中的测试)是通过 Run Configuration 完成的。 .当您右键单击一个模块时,PyCharm 会搜索该模块的现有 Run Configuration。如果找到配置(这可能是由于之前的运行,或手动创建 Configuration),PyCharm 只会建议运行该配置。

例如,如果创建了 module.py 的配置来运行它的 doctests,这就是我们在右键单击 module 时会看到的选项.py。但是,如果没有找到配置,PyCharm 建议在不同的选项中运行模块,具体取决于模块中的代码(定期运行,或运行 doctests/单元测试)。一旦选择了一个选项,PyCharm 会隐式地创建相应的临时 Run Configuration。从这里开始,当右键单击模块时,您将只获得为该模块创建的配置。

重要的旁注: PyCharm 最多保存 6 个临时(即通过运行模块创建的 Configurations)Run Configurations- 3在“Python”中,即脚本,和 3 在“Python 测试”中。这意味着如果您运行 moduleA.pymoduleB.pymoduleC.py,然后运行 ​​moduleD.py,PyCharm 中的临时 Configurations 将是 moduleB.pymoduleC.pymoduleD.pymoduleA.py的配置会被自动删除,除非显式保存。

这种行为可以重现如下:

  1. PyCharm中,新建一个Python模块:“temp”

2.在模块中添加以下内容:

"""
>>> print 3.14
3.14
"""

if __name__ == '__main__':
pass
  1. 右键单击 doctest 部分可以选择“Run 'Doctests in temp'”
  2. 右键单击ma​​in部分,可以选择“Run 'temp'”
  3. 选择任何一个选项都会使另一个选项在后续运行中消失。例如,选择 run 模块将使运行 Doctests 的选项在后续运行中消失,反之亦然。回到第一阶段,可以在两个选项之间进行选择,可以通过删除模块的“运行配置”:

运行 --> 编辑配置 --> 找到模块的当前配置(通常突出显示)--> 单击“减号”按钮(左上角)--> 单击“应用”--> 单击确定。现在我们回到第 3 步。

(在 PyCharm 5.0 和 4.5 中重现)

总结一下:

  • 如果未找到 Run Configuration,PyCharm 建议以任何可能的方式运行模块(作为脚本、文档测试或单元测试)
  • 如果找到 Run Configuration,PyCharm 只会建议 Configuration
  • 如果 PyCharm 没有为您提供所需的运行选项,请找到阻止它为您提供该选项的 Run Configuration删除它,或者创建一个新的,它将按照您想要的方式运行文件或方法/函数。

关于python - 如何使用 PyCharm 运行文档测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29240835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com