您好,我想知道这是否可能,如果可以,如何?从主线做 doctests 或类似的事情,而不是像 doctest docs 中描述的那样测试一个函数,即
"""
>>>
Hello World
"""
if __name__ == "__main__":
print "Hello"
import doctest
doctest.testmod()
这是能够针对文档字符串测试学生脚本的一部分,我发现这个代码片段允许我输入两者作为强项
import doctest
from doctest import DocTestRunner, DocTestParser
enter code here
def run_doctest(code, test):
import doctest
from doctest import DocTestRunner, DocTestParser
code = code + '\n__dtest=__parser.get_doctest(__test, globals(), "Crunchy Doctest", "crunchy", 0)\n__runner.run(__dtest)\n'
runner = DocTestRunner()
parser = DocTestParser()
exec code in {'__runner':runner, '__parser':parser, '__test':test}
这或多或少,但似乎并不理想,对任何一点的建议