我如何使下列工作,以便帮助的测试运行?不会的。
def B():
def helper():
"""
>>> some doctest
result
"""
...
if __name__ == "__main__":
import doctest
doctest.testmod() 发布于 2015-03-27 18:33:01
无法找到嵌套函数,因为函数对象在运行B()函数之前不存在。作为调用B()函数的结果,您必须返回它,然后将它分配给__test__字典:
def B()
def helper()
"""
>>> some doctest
result
"""
return helper
# ...
if __name__ == "__main__":
import doctest
__test__ = {'helper': B()}
doctest.testmod() doctest.testmod()查找__test__全局字典,并在值中的任何类、方法、函数和模块上查找文档字符串;任何字符串值都直接作为docstring测试执行。
如果B()做了其他事情,那么您可能应该让helper()成为一个简单的全局函数:
def B():
# uses helper
def helper()
"""
>>> some doctest
result
"""
# ...
if __name__ == "__main__":
import doctest
doctest.testmod() https://stackoverflow.com/questions/29307730
复制相似问题