Unittest-framework-test-discovery
提供:Dev Guides
UnitTest Framework-テスト検出
TestLoaderクラスにはdiscover()関数があります。 Pythonテストフレームワークは、これを使用して簡単なテスト検出を行います。 互換性を保つには、テストを含むモジュールとパッケージを最上位ディレクトリからインポートできる必要があります。
以下は、テスト検出の基本的なコマンドラインの使用法です-
Python –m unittest discover
インタープリターは、テストを含むすべてのモジュールを現在のディレクトリと内部ディレクトリから再帰的にロードしようとします。 他のコマンドラインオプションは-
Sr.No. | Options & Description |
---|---|
1 |
-v, --verbose 詳細な出力 |
2 |
-s, --start-directory ディレクトリディスカバリを開始するディレクトリ(。 デフォルト) |
3 |
-p, --pattern patternテストファイルに一致するパターン(test *.pyデフォルト) |
4 |
ディレクトリプロジェクトの最上位ディレクトリ(デフォルトは開始ディレクトリ) |
たとえば、「tests」ディレクトリで「assert」で始まる名前のモジュールでテストを検出するには、次のコマンドラインが使用されます-
C:\python27>python –m unittest –v –s "c:\test" –p "assert*.py"
テスト検出では、テストをインポートしてロードします。 テスト検出により、指定した開始ディレクトリからすべてのテストファイルが検出されると、インポートするパッケージ名にパスが変換されます。
ディレクトリへのパスではなくパッケージ名として開始ディレクトリを指定すると、discoverはインポート元の場所が意図した場所であると想定するため、警告は表示されません。