是否可以将python docstrings用于代码?

时间:2014-05-19 06:50:58

标签: python

我开发了一个python脚本,它将在服务器版本上运行验收测试。

我使用了一种方案,其中通用测试函数将包含测试名称和docstring中的测试先决条件。执行函数将解析测试函数上的文档字符串,并使用docstring中的名称进行标记,然后使用后续行来验证是否满足测试依赖项(如果依赖项失败则无法运行测试)。

func _test_1(self):
     """
     Name: Test foo
     Test bar
     """

我做了这个工作,但我想知道这在python社区中是否普遍可以接受。 使用除文档或代码说明之外的文档字符串是否有任何警告?

1 个答案:

答案 0 :(得分:3)

当然可以;甚至有一个标准的库工具可以执行此操作:doctest

  

doctest模块搜索看起来像交互式Python会话的文本片段,然后执行这些会话以验证它们是否完全如图所示工作。有几种常用的方法可以使用doctest

     
      
  • 通过验证所有交互式示例是否仍然按照文档记录的方式检查模块的文档字符串是否是最新的。
  •   
  • 通过验证测试文件或测试对象中的交互式示例是否按预期工作来执行回归测试。
  •   
  • 编写包的教程文档,用输入输出示例进行说明。根据是否强调示例或说明文本,这具有“文化测试”或“可执行文档”的风格。
  •   

显然,你想到了其他人认为适用得足以使其成为核心Python库特征的想法。

文档字符串只是文本,您可以为您提供的文本添加任何含义。这里没有任何警告!