另一種方法問: 如果我在reST中編寫doctests,我可以將它用於Sphinx或其他自動文檔工作嗎?爲什麼我會在重組文本中編寫doctests?
背景:我不知道如何使用獅身人面像並且沒有太多的使用經驗,所以我想知道如果我可以使用reST編寫的doctests比其他有用的比Sphinx更有用嗎?
另一種方法問: 如果我在reST中編寫doctests,我可以將它用於Sphinx或其他自動文檔工作嗎?爲什麼我會在重組文本中編寫doctests?
背景:我不知道如何使用獅身人面像並且沒有太多的使用經驗,所以我想知道如果我可以使用reST編寫的doctests比其他有用的比Sphinx更有用嗎?
爲什麼我會在重構文本中編寫doctests?
您不會真的在「重構文本」中編寫測試。交互式示例是測試用例,它與周圍標記的外觀無關;它可能是重要的,或者它可能是其他類似Markdown或LaTeX的東西。
對於Python文檔,reST已被採納爲"official" markup language,但您沒有義務使用它。
那麼爲什麼doctest.testfile()中的doctest.testfile()的簡單用法示例是doctest文檔,然後作爲reST文件提供的?
文檔測試是通過檢查在文檔嵌入互動的例子的正確性測試代碼的方式,因此它是有道理的,也examples explaining the doctest module包括休息標記。
您可以對僅包含交互式輸入/輸出示例但沒有其他內容的文本文件運行doctest。這些示例可以作爲輕量級的單元測試很有用,但是它們本身不適合作爲文檔。
我想知道如果我可以使用reST寫的doctests比其他有用的比獅身人面像嗎?
即使您沒有將Sphinx用於文檔,具有可測試的代碼示例也可能很有用。
如果您正在尋找理解reST的替代文檔工具,請參閱docutils(Sphinx基於btw)及其front-end tools(如rst2html.py)。
另一個可能感興趣的工具是rst2pdf。
對於延遲接受感到抱歉。當時一定是太忙了。 –
將文檔添加到您的文檔很有意義,以確保文檔中的代碼實際上按預期工作。所以,你正在測試你的文檔。對於一般的代碼測試,根本不推薦使用doctests。
沒什麼,我不知道如何使用獅身人面像,只是讀了一下它,並沒有太多的經驗。坦率地說,我有點害怕獅身人面像和它所需的開銷,所以我只是想知道如果我不使用獅身人面像在reST中編寫doctests有什麼好處?有沒有更簡單的方法可以利用我在reST中編寫我的文檔的事實? –
我不明白你的問題:你的意思是把doctests包含在一個單獨的文檔中,用rst編寫嗎?或者將第一個添加到您的文檔字符串?你不需要首先進行文檔測試,但是需要文檔。 – bmu
那麼爲什麼doctest.testfile()中的doctest.testfile()作爲一個reST文件給出的簡單用法示例? http://docs.python.org/dev/library/doctest.html,第25.2.2節 –