私はそのような構造を持つプロジェクトを持っています:
my_project_with_tests/
project/
__init__.py
module.py
test/
test.py
module.py
2 つdoctest
の 'ed 関数が含まれています。
def foo():
"""
>>> foo()
1
"""
return 1
def test_foo_doctest():
"""
>>> module.foo()
1
"""
pass
def bar():
"""
>>> bar()
"""
return 1
test.py
テストを実行するために必要なビットが含まれています。
import sys
import os.path
sys.path = [os.path.abspath("../project")] + sys.path
import module
def test_foo():
assert module.foo() == 1
def test_bar():
assert module.bar() == 1
nose
現在、 withを使用してテストを実行しています
nosetests \
--all-modules \
--traverse-namespace \
--with-coverage \
--cover-tests \
--with-doctest \
--where test/
ただし、ソース ディレクトリdoctests
からは実行されません(ただし、パスするため、テスト ディレクトリからは問題ありません)。project
doctests
test_foo_doctest
- これは良い呼び方
nose
ですか? - ディレクトリ
doctests
から実行するにはどうすればよいですかproject
- 使用して
nose
- ディレクトリ構造を変更せずに
project
ディレクトリでテストを実行せずに
- 使用して