2017-09-28 2 views
1

私はdoctestをSphinxで使う方法を理解しようとしていますが、私のテストは見つからないようです。私は次の簡単な例を持っています。スフィンクスDoctestがテストを見つけられない

def my_func(): 
    ''' 
    Dummy test function. Returns the number 5. 
    .. doctest:: 

    >>> my_func() 
    5 
    ''' 
    return 5 

私はmake doctestを実行すると、出力がゼロのテストがあったことを私に伝えます。 make htmlを実行してからindex.htmlファイルに移動すると、ドキュメントに含まれている関数my_func()が表示されるため、正しく設定されていることがわかります。

私はここで簡単なものを見落としていますか?ご協力いただきありがとうございます。

+0

わかりませんが、インデントに問題がありますか?テストコードをインデントして、スフィンクスがdoctestグループに属していることを知るようにしてください。 – Randrian

+0

あなたは正しいです!後続の行が "doctest ::"でインデントされている場合、実際にテストが認識されます。 – hobscrk777

答えて

1

コメントに既に解決されていても、解決策を見つけるのに役立つ答えをここに表示します。

問題はdoctestのブロックのインデントた:

def my_func(): 
    ''' 
    Dummy test function. Returns the number 5. 
    .. doctest:: 

     >>> my_func() 
     5 
    ''' 
    return 5 

doctestのブロックの後に字下げされている行だけがテストの一部とみなされ、試験されます。

関連する問題