A library for integrating Jira Zephyr Scale (Adaptavist\TM4J) with pytest
Project description
pytest-zephyr-scale-integration
pytest-zephyr-scale-integration
— это библиотека для интеграции pytest
с Jira Zephyr (Adaptavist\TM4J).
Она позволяет автоматически создавать тестовые циклы в Zephyr, запускать тесты и обновлять их статусы в Jira.
Возможности
- Автоматическое создание тестовых циклов в Zephyr (с возможностью создания папки или добавления в существующую).
- Обновление статусов тестов в Jira Zephyr.
- Поддержка параметризованных тестов.
- Гибкая настройка через файл
.env
.
Установка
Установить библиотеку можно через pip
:
pip install pytest_zephyr_scale_integration
Запуск
- Создать файл
.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'
- Называть тесты нужно по имени ключа тест-кейса Jira Zephyr, например,
"test_T123"
. - При запуске автотестов через
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pytest_zephyr_scale_integration-0.1.21.tar.gz
.
File metadata
- Download URL: pytest_zephyr_scale_integration-0.1.21.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d921b279d2118b045f47e0e17f5c79d433d903ecedaff33483cf1cad9e829c35 |
|
MD5 | 6bcd0529859d1b97cd94e475f39be161 |
|
BLAKE2b-256 | a99c192edebde44ecdef4c11048042bfc90c859595d2fb52a5279f1fe51bbd1c |
File details
Details for the file pytest_zephyr_scale_integration-0.1.21-py3-none-any.whl
.
File metadata
- Download URL: pytest_zephyr_scale_integration-0.1.21-py3-none-any.whl
- Upload date:
- Size: 10.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d032f7d58f7c32081e004d589aff2020e0f92a11118986608f4d5b4b48d54546 |
|
MD5 | 3a9af71fb14f46a96824582eaeb12278 |
|
BLAKE2b-256 | 1090ed3f1ba08d51e5b45d0bc0b7701ecc52cde084f06317afcce3450b004ca9 |