こんにちは私はそれが可能かどうか疑問に思っていました、もしそうならどうやって?doctest docsで説明されているように関数をテストする代わりに、メインラインからdoctestまたは同様のことを行うため。
"""
>>>
Hello World
"""
if __name__ == "__main__":
print "Hello"
import doctest
doctest.testmod()
これは、学生のスクリプトをdocstringに対してテストできることの一部です。私は、両方を強みとして入力できるこのコードのスニペットを見つけました。
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}
それは多かれ少なかれ行いますが、それはほとんど理想的ではないようです、どちらかの点での提案