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

Логика создания тестового цикла

  • Если FOLDER_NAME в .env пустой, то тестовый цикл с пройденными тестами будет создан в корневой папке.
  • Если FOLDER_NAME в .env заполнен, то:
    • Если указанная папка уже есть, то тестовый цикл создастся в ней.
    • Если указанной папки нет, то она авматотически создастся в корне и ней будет находится созданный тестовый цикл.

Логика установки статусов тест-кейсам в 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.20.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

File details

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

File metadata

File hashes

Hashes for pytest_zephyr_scale_integration-0.1.20.tar.gz
Algorithm Hash digest
SHA256 f61f26e4428a80815b661806a7e6de7359e6e51e1701a65603b101dc0e853cfe
MD5 8387388d9352097c97d80cc2856dae3b
BLAKE2b-256 5ad5e71f6351744b228adcefa1978f4c97f1e68dfa8fae5f2f48c9e5c059705c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytest_zephyr_scale_integration-0.1.20-py3-none-any.whl
Algorithm Hash digest
SHA256 c74c6abd90331c20762dc2307cab5c2f48247d2b33a283bd6a3f81ccb506e166
MD5 ef591163f8fbc3c75753fd32c58c7dd7
BLAKE2b-256 a43bbdeae95199fba4464946b98eb70b7d4f3812eb54a80e731bc727cdab95c0

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