2

nosetestsしばらく前から疑問に思っていましたが、さまざまなサブディレクトリにあるさまざまなテストを実行するためのオプションを渡す方法を理解できませんでした。パッケージのディレクトリ構造の例:

my_package/
|-- my_module1/
   |-- tests/
       |-- unit/
           | ... a bunch of unit tests
       |-- integration/
           |... a bunch of integration tests
|-- my_module2/
   |-- tests/
       |-- unit/
           | ... a bunch of unit tests
       |-- integration/
           |... a bunch of integration tests

すべてのモジュール (サブディレクトリ内のすべてのテスト) で単体テストのみを実行したい場合tests/unit/、nosetests ライブラリを使用してどのように実行しますか?

4

1 に答える 1

2

私は--where、または--matchnosetestsの引数があなたを助けることができると思います:

-w WHERE, --where=WHERE このディレクトリでテストを探します。複数回指定できます。渡された最初のディレクトリは、デフォルトである現在の作業ディレクトリの代わりに作業ディレクトリとして使用されます。その他は、実行するテストのリストに追加されます。[NOSE_WHERE]

-m REGEX, --match=REGEX, --testmatch=REGEX この正規表現に一致するファイル、ディレクトリ、関数名、およびクラス名は、テストと見なされます。デフォルト: (?:^|[\b_./-])[Tt]est [NOSE_TESTMATCH]

また、nosetest の -m、-i、-e の仕組みを知っている人はいますか? も参照してください。

しかし、実際には、ルート レベルでテスト ディレクトリを保持することを好みます

于 2013-03-21T09:38:20.823 に答える