Pytest: Как установить тест в одном файле, чтобы пропустить, если тест из другого файла не пройден - PullRequest
0 голосов
/ 01 декабря 2018

Мне нужно организовать свои тесты, потому что у меня большой набор тестов.Я не вижу возможности пропустить тест в одном классе Python, если тест, от которого он зависит, в другом классе Python завершился неудачей.

Вот мои основные настройки:

class TestWorkflow1:

    @staticmethod
    @pytest.mark.dependency()
    def test_create_something():
        //do some stuff    

class TestNegativeWorkflowClone1:

    @staticmethod
    @pytest.mark.dependency('TestWorkflow1::test_create_something')
    def test_try_to_clone_something():
        //do some stuff 

TestNegativeWorkflowClone1 работает до TestWorkflow1.Я попробовал то, что было предложено в ответе на этот тикет: Зависимости между файлами с pytest-зависимостью?

from pytest_dependency import DependencyManager

class TestWorkflow1:
    DependencyManager.ScopeCls['module'] = DependencyManager.ScopeCls['session']

    @staticmethod
    @pytest.mark.dependency()
    def test_create_something():
        //do some stuff    

from pytest_dependency import DependencyManager

class TestNegativeWorkflowClone1:
    DependencyManager.ScopeCls['module'] = DependencyManager.ScopeCls['session']

    @staticmethod
    @pytest.mark.dependency('TestWorkflow1::test_create_something')
    def test_try_to_clone_something():
        //do some stuff 

Это тоже не сработало.TestNegativeWorkflowClone1 все еще выполняется до TestWorkflow1.

Я попытался использовать имя файла в декорации зависимостей в TestNegativeWorkflowClone1

class TestNegativeWorkflowClone1:
    DependencyManager.ScopeCls['module'] = DependencyManager.ScopeCls['session']

    @staticmethod
    @pytest.mark.dependency('TestWorkflow1.py::test_create_something')
    def test_try_to_clone_something():
        //do some stuff 

Все еще не работало.TestNegativeWorkflowClone1 все еще выполняется первым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...