Задать вопрос
@nart_kenobi
QA Engineer

Как пропускать шаги в pytest, на основе статуса багов в Jira?

Есть ситуация, имеем множество тест кейсов, в которых есть шаги, если на определенном шаге обнаруживается баг, то мы заносим его в Jira и затем обвешиваем шаг декораторами (ставим ссылку на баг и skip). И получается так, что тестеру теперь нужно мониторить статус всех багов, и затем вручную убирать декораторы с падающего шага. Возникла идея автоматизировать этот процесс, сделать скрипт, который будет мониторить статус задач с багами в Jira, и в зависимости от статуса, будет пропускать или исполнять шаг. Предполагается сделать базу, в которую тестеры будут добавлять id бага в Jira, номер падающего шага, и на каждом запуске тестов. Как можно в pyteste реализовать такое поведение? куда вообще копать, какие есть фичи у pytest, которые смогут помочь в реализации данной идеи?
  • Вопрос задан
  • 181 просмотр
Подписаться 2 Сложный 6 комментариев
Решения вопроса 1
@nart_kenobi Автор вопроса
QA Engineer
В общем разобрался сам. В pytest-е в файле с настройками conftest.py можно объявить такую функцию, которая сразу после запуска тестов собирает все шаги в модуле, и дальше с ними можно проводить уже свои манипуляции. И при этом никакими декораторами шаги обвешивать не надо. А связать все это с джирой, думаю уже дело техники.
def pytest_collection_modifyitems(items):
    skip_mark = pytest.mark.skip()

    for item in items:
        if <keyword> in item.function.func_name:
            item.add_marker(skip_mark)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы