Skip to main content

A library for integrating Jira Zephyr Scale (Adaptavist\TM4J) with pytest

Project description

pytest-zephyr-scale-integration

PyPI License Python

pytest-zephyr-scale-integration — это библиотека для интеграции pytest с Jira Zephyr (Adaptavist\TM4J). Она позволяет автоматически создавать тестовые циклы в Zephyr, запускать тесты и обновлять их статусы в Jira.

Возможности

  • Автоматическое создание тестовых циклов в Zephyr.
  • Обновление статусов тестов в Jira Zephyr.
  • Поддержка параметризованных тестов.
  • Гибкая настройка через файл .env.

Установка

Установить библиотеку можно через pip:

pip install pytest_zephyr_scale_integration

Запуск

  1. Создать файл .env и заполнить его полями
# Статусы тестов в Adaptavist
NOT_EXECUTED=3236
IN_PROGRESS=3237
PASS=3238
FAIL=3239
BLOCKED=3240

# Конфигурация JIRA
JIRA_TOKEN='Jira_Token' # продпочтительнее использовать ТУЗ, у которого настроена электронная почта.
JIRA_PROJECT_NAME='Проект' # ключ проекта, например, "BAR"
JIRA_PROJECT_ID=12345 # id проекта, можно узнать вызвав `GET /rest/tests/1.0/project`
JIRA_URL='https://your-jira-instance.atlassian.net'
  1. Называть тесты нужно по имени ключа тест-кейса Jira Zephyr, например, "test_T123".
  2. При запуске автотестов через pyest нужно указать дополнительные параметры:
    --zephyr - вкл процесса интеграции. После прохождения автотестов будет автоматически создан тестовый цикл.
    --test_run_name - наименования тестового цикла, по-умолчанию - "Test Run Cycle".
    Например,
    pytest --zephyr --test_run_name="Regress v.1.1.0"

Логика установки статусов тест-кейсам в Jira Zephyr

Всем тест-кейсам устанавливаются соответствующие pytest'у статусы в Jira Zephyr.

Если в Jira Zephyr написан параметризованный тест, то в тестовом цикле он будет выглядеть как один тест с тестовыми скриптами в колчичестве равном набору параметров в тест-кейсе. Каждый такой набор называется Test Script.
При автоматизации такого тест-кейса нужно делать параметризацию и в коде. Наборы в pyest должны идти в том же порядке, что и в Zephyr, так как pyest выполняет их по порядку.

В тестовом цикле результаты прохождения одного параметризованного теста отображаются в шагах Test Script'а, чтобы можно было явно определить какой из всех наборов оказался упавшим. Логика установки статусов у шагов параметризованных тестов:

  • Если набор пройден успешно, то все шаги Test Script'а - PASS
  • Если набор упал, то все шаги Test Script'а - FAIL.

Логики по сопоставлению действий в `pytest' и шагов в Zephyr нет.

Логика установки статусов и тест-кейсов:

  • Если все наборы пройдены успешно, то тест-кейс - PASS
  • Если хотя бы один набор упал, то тест-кейса отмечается как FAIL.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytest_zephyr_scale_integration-0.1.8.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file pytest_zephyr_scale_integration-0.1.8.tar.gz.

File metadata

File hashes

Hashes for pytest_zephyr_scale_integration-0.1.8.tar.gz
Algorithm Hash digest
SHA256 ff47e13c1b7036155e1fc21517eb05035c24188c468d2bbde38e5f92804360aa
MD5 91036c833c0f54da7129cd9e169ee6c9
BLAKE2b-256 404b057d664e2fe9dd61c8652837f42362f6eb50949c920f02c5140ddad85163

See more details on using hashes here.

File details

Details for the file pytest_zephyr_scale_integration-0.1.8-py3-none-any.whl.

File metadata

File hashes

Hashes for pytest_zephyr_scale_integration-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 e0fd6eb7d431bcde9449a8935fcd7b30cb36ec94d653320a49d9a301a28d7cb8
MD5 bf28f87b2b95714f99fa56fc219333dd
BLAKE2b-256 d60cc959a99733526d1e08701975e4316d26c1f8717c8aa65c7cf9b96d9873ba

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page