Возможно ли отключить приборы в pytest?
Причина, по которой я хочу это сделать, заключается в том, что я использую свою собственную структуру приспособлений, в настоящее время похожую на эту (плюсы и минусы различных механизмов фиксаций не 'В центре внимания этого вопроса):
import functools
def with_fixtures(test_func):
@functools.wraps(test_func)
def wrapper(self, *args, **kwargs):
# This simplified code reproduces the problem -- the real implementation passes
# an object instead of a dummy
return test_func(self, "dummy fixtures", *args, **kwargs)
return wrapper
class Test:
@with_fixtures
def test(self, fixtures):
print("fixtures %s" % (fixtures, ))
pass
Если я запускаю этот тест с другой платформой, мой with_fixtures
декоратор передает объект фикстуры в тест.Если я запускаю pytest на этом, я получаю это:
def test(self, fixtures):
E fixture 'fixtures' not found
Чтобы отключить приборы pytest, я бы предпочел локально пометить отдельные тесты декоратором, чем добавлять код в специальный файл, такой как conftest.py
намои тесты не имеют явной зависимости, так что на местном уровне легче понять, почему тест ведет себя так, как он.