stdout にログを記録するいくつかのテストがあり、nose が実行されている冗長性に基づいて、テスト スクリプトのログ レベルを変更したいと考えています。
実行中のテストの 1 つから、実行中のノーズ インスタンスの冗長性にアクセスするにはどうすればよいですか?
これはちょっとしたハックですが、現在のテストランナーが使用しているnose.config.Configオブジェクトを特定し、config.verbosity属性を確認することができます。
import nose.config
def test_checkverbosity():
import gc
for obj in gc.get_objects():
if isinstance(obj, nose.config.Config):
break
print obj.verbosity
assert False
これを鼻で処理するために期待される方法はlogger
、テスト内でフレームワークを使用し、--logging-level
オプションでキャプチャされるレベルを制御することです。
デフォルトでは、nose はテストによって作成されたすべてのログをキャプチャしますが、--logging-filter
config パラメータを使用してフィルタを指定できます。