私はpytestを使って書かれたたくさんのテストを持っています。ディレクトリの下にすべてありますdir
。例えば:
dir/test_base.py
dir/test_something.py
dir/test_something2.py
...
それらのコードの簡略化されたバージョンは次のとおりです。
test_base.py
import pytest
class TestBase:
def setup_module(module):
assert False
def teardown_module(module):
assert False
test_something.py
import pytest
from test_base import TestBase
class TestSomething(TestBase):
def test_dummy():
pass
test_something2.py
import pytest
from test_base import TestBase
class TestSomethingElse(TestBase):
def test_dummy2():
pass
私のすべてのtest_something*.py
ファイルは、 の基本クラスを拡張しますtest_base.py
。今、私はsetup_module(module)
とteardown_module(module)
メソッドを に書きましたtest_base.py
。setup_module はすべてのテストでteardown_module()
1 回呼び出され、すべてのテストが終了したら最後に呼び出されることを期待していました。
しかし、関数が呼び出されていないようですか? これを機能させるにはデコレータが必要ですか?