У меня есть куча тестов, написанных с использованием 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() будет вызван в конце, когда все тесты будут завершены.
Но функции, кажется, не вызывают? Нужны ли декораторы для этого?