Python パッケージを作成したいのですが、unittest ディレクトリの最適な場所がわかりません。Hitchhikers Guideでは、テストは実際のモジュール内とhereに配置されていますが、Python プロジェクトの HowTo では、プロジェクト レベルの追加のディレクトリにテストを配置することを推奨しています。
したがって、プロジェクトは次のようにレイアウトする必要があります (形式 A):
MyProject/
|-- setup.py
|-- README
|-- mypackage/
|-- __init__.py
|-- some_module.py
|-- test/
|-- __init__.py
|-- test_module.py
|-- scripts/
|-- script1.py
またはこのように(フォーマットB):
MyProject/
|-- setup.py
|-- README
|-- mypackage/
|-- __init__.py
|-- some_module.py
|-- test/
|-- __init__.py
|-- test_module.py
|-- scripts/
|-- script1.py
どちらの場合の利点/欠点は何ですか? これはどこかで定義されていますか?
パッケージ化 (setup.py および/または setup.cfg) に distutils(2) を使用したいので、これらの状況ではテストをどのように構築するかが特に重要になる可能性があります。形式 A では、単体テストはパッケージに自動的に含まれます (パッケージ全体が定義されている場合) が、形式 B では、単体テストは別の方法で指定する必要があります (私も知りません)。