Управление ветками
В классическом проекте ветки — это независимые копии каталога тест-кейсов внутри одного проекта без подключенного репозитория. Ветка содержит: директории, тестовые наборы, тест-кейсы, вложения к тест-кейсам и Wiki проекта.
Ветки нужны в следующих ситуациях:
- Параллельно готовятся несколько версий тестовой документации.
- Нужно изолированно дорабатывать набор кейсов, не затрагивая основную ветку.
- Требуется скопировать готовую структуру в новую ветку или перенести изменения слиянием.
Переключение ветки в реестре
Для переключения ветки в реестре тест-кейсов:
- Откройте реестр тест-кейсов классического проекта.
- В левом верхнем углу нажмите на переключатель веток.
- Выберите нужную ветку в списке.

Реестр покажет тест-кейсы, наборы, директории и Wiki только выбранной ветки.
Выбранная ветка влияет на:
- Реестр тест-кейсов — отображение содержания каталога.
- Wiki проекта — отображение страницы документации ветки.
- Тест-раны проекта — при добавлении кейсов учитывается текущая ветка. В списке тест-ранов и на странице прогона отображается ветка, с которой был сформирован набор кейсов.
- Импорт автотестов — сопоставление результатов идёт по
case_idв выбранной ветке.
Подробнее о работе с реестром читайте в статье Навигация в реестре тест-кейсов.
Назначение ветки по умолчанию
При создании классического проекта автоматически создается ветка main. Она назначается веткой по умолчанию и отображается в левом верхнем углу экрана на странице реестра тест-кейсов.

Ветка по умолчанию:
- Открывается первой при входе в реестр тест-кейсов.
- Используется, если в других разделах ветка не выбрана явно.
Инфо
В проекте всегда должна оставаться хотя бы одна ветка. Единственную ветку проекта удалить нельзя.
Для назначения метки в окне "Управление ветками" нажмите действие "По умолчанию" напротив нужной ветки.

Окно управления ветками
Для открытия окна "Управление ветками" на странице реестра тест-кейсов необходимо:
- Открыть переключатель веток.
- Нажать пункт "Управление ветками".

В появившемся модальном окне отображается список веток проекта. Для каждой ветки доступны следующие сведения:
- Ветка: название и метка «По умолчанию», если ветка основная.
- Содержимое: количество тест-кейсов, наборов и папок.

Для принудительного обновления списка веток нажмите "Обновить".

Для сравнения тест-кейсов в двух ветках нажмите "Сравнить ветки" в верхней части окна или в строке быстрых действий ветки. Подробнее читайте в разделе Сравнение веток.
Права доступа
Доступ к веткам классического проекта определяется правами пользователя, представленными в таблице ниже:
| Действие | Наблюдатель | Участник | Модератор | Владелец |
|---|---|---|---|---|
| Просмотр | ||||
| Просмотр списка веток | + | + | + | + |
| Редактирование | ||||
| Создание ветки | - | + | + | + |
| Слияние веток | - | - | + | + |
| Удаление ветки | - | - | + | + |
| Назначение ветки по умолчанию | - | - | + | + |
Создание ветки
Чтобы создать ветку, нажмите "Создать ветку" в окне "Управление ветками".

Заполните обязательное поле "Имя ветки". При копировании содержания из существующей ветки также заполните обязательное поле "Исходная ветка". Опционально заполните остальные поля.
Список и описание полей ветки:
- Имя ветки — произвольное название ветки. Имя ветки может содержать латинские буквы, цифры и символы
_,-,.,/. - Способ создания — создание указателя на текущее состояние ветки. Пустая ветка — создается сразу, без тест-кейсов и наборов. Скопировать из существующей — в новую ветку копируются директории, наборы, тест-кейсы и Wiki выбранной исходной ветки.
- Исходная ветка — ветка, откуда будет копироваться содержимое.
В поле "Способ создания" нажмите на одно значение из списка вариантов.

Для заполнения поля "Исходная ветка" нажмите на строку и выберите одно значение в выпадающем списке.

Чтобы создаваемая ветка стала веткой по умолчанию, нажмите галочку напротив соответствующего поля.

Совет
Имя ветки должно быть уникальным в рамках проекта.
После заполнения полей нажмите на кнопку "Создать", расположенную в правом нижнем углу окна.

В процессе копирования на экране отображается прогресс-бар. Дождитесь успешного завершения операции, после завершения ветка появится в списке.
Слияние веток
Слияние полностью перезаписывает целевую ветку содержимым исходной. Все директории, наборы, тест-кейсы, вложения и wiki целевой ветки будут удалены и заменены данными исходной ветки.
Примечание
Слияние нельзя отменить. Перед слиянием убедитесь, что целевая ветка не содержит нужных уникальных изменений, или заранее скопируйте их в отдельную ветку.
Для слияния в проекте должно быть минимум две ветки, которые не могут совпадать.
Чтобы начать слияние, в окне "Управление ветками" нажмите "Слияние веток".

В появившемся окне выберите исходную ветку — откуда будет скопировано содержимое. Для этого нажмите на строку и в выпадающем списке выберите одно значение.

Для выбора целевой ветки, которая будет перезаписана, нажмите на строку и в выпадающем списке выберите необходимую ветку.
Чтобы сохранить изменения, нажмите "Продолжить" в правом нижнем углу окна. Для отмены слияния нажмите соответствующую кнопку.

Подтвердите предупреждение о полной перезаписи целевой ветки, нажав соответствующую кнопку.

После подтверждения слияния на экране отображается прогресс-бар, показывающий сколько элементов обработано из общего числа. Дождитесь успешного завершения операции.
Для возвращения к окну управления ветками нажмите "К списку веток".
Удаление ветки
Чтобы удалить ветку, необходимо:
- Открыть окно "Управление ветками".
- Нажать "Удалить" напротив ветки, которую нужно убрать.
- Подтвердить действие в модальном окне.

Примечание
Нельзя удалить единственную ветку проекта и ветку по умолчанию. Для удаления ветки по умолчанию сначала назначьте default другой ветке.
Сравнение веток
Сравнение веток — функция, предназначенная для сопоставления тест-кейсов в двух ветках проекта. В результате сопоставления формируется перечень различий: добавленные, измененные и удаленные тест-кейсы. Функция поддерживает классические проекты со встроенным ветвлением и Git-проекты, где ветки соответствуют веткам репозитория.
Платформа SaveTest сравнивает смысловое содержание кейса. Кейсы сопоставляются по общему идентификатору (case_id).
Функция используется в следующих ситуациях:
- Перед релизом — понять, какие тесты изменились и требуют прогона.
- При ревью merge request — оценить влияние правок на тестовую документацию.
- При сверке состава кейсов между ветками — сравнить содержимое веток проекта.
Переход к сравнению
Для сравнения веток:
- Откройте страницу необходимого проекта.
- Перейдите в раздел Тест-кейсы.
- Нажмите на переключатель веток в верхнем левом углу тулбара и выберите пункт "Управление ветками".
- Нажмите "Сравнить ветки" в верхней части окна или в строке быстрых действий ветки.

Для классических проектов доступен только ручной способ сравнения веток.
Для Git-проектов доступен как ручной способ сравнения веток, так и дополнительный через merge request.
Режимы отображения реестра
Для перехода в полноэкранный режим нажмите кнопку "Открыть на весь экран" в правом верхнем углу окна сравнения.

Для изменения вида отображения реестра доступны команды:
- Развернуть все папки (1) — отображение директорий и наборов реестра
- Свернуть все (2) — отображение только директорий

Поиск и фильтрация кейсов
Для выполнения поиска кейсов в реестре введите в поисковое поле полное или частичное название кейса.

Для выполнения фильтрации нажмите на иконку воронки напротив строки поиска.

Для применения фильтра по полю "Приоритет" нажмите на строку и выберите одно или несколько значений в выпадающем списке.

Для применения фильтра по полю "Изменилось поле" нажмите на строку и выберите одно значение в выпадающем списке.

Для отмены фильтрации нажмите "Сбросить фильтры" внутри окна.

Ручное сравнение
Чтобы сравнить две ветки проекта:
- Выберите необходимые ветки в полях вверху блока, нажав на строку и выбрав необходимое значение в выпадающем списке:
- Левое поле — базовая ветка, с которой сравнивают содержимое. Базовой веткой автоматически становится ветка по умолчанию.
- Правое поле — целевая ветка, которая сравнивается с базовой.
- Нажмите "Сравнить" в строке выбора веток.

Совет
Выполняйте сравнение до слияния веток — это позволяет своевременно выявить и устранить расхождения в тест-кейсах до завершения слияния.
При необходимости поменяйте ветки местами, нажав на значок переключения между полями выбора веток.

Сравнение веток через MR
Создание ветки из merge request
При необходимости создайте новую ветку для сравнения:
- Введите название новой ветки в соответствующее поле в окне "Управление ветками".
- Нажмите "Добавить ветку".

Примечание
Для сравнения веток необходимо наличие как минимум двух веток в проекте.
Для автоматического добавления новой ветки в проект вставьте ссылку на MR/PR в поле "По ссылке на merge request". Ветки подтянутся и синхронизируются на платформе SaveTest автоматически.

Примечание
Создавайте ветки копированием, чтобы сравнение показывало реальные изменения, а не два несвязанных каталога.
Загрузка MR
Чтобы сравнить ветки через merge request, переключитесь на вкладку "Merge request" в окне "Анализ влияния изменений".
Инфо
Для разбора merge request необходим токен доступа с настроенными правами. Токен указывается в настройках Git-репозитория проекта. Подробнее читайте в разделе Настройки Git-репозитория.

Вставьте ссылку на MR/PR из GitLab или GitHub в соответствующее поле в верхней части окна.

Нажмите "Загрузить"

После загрузки платформа SaveTest определит ветки MR. Если веток еще нет на платформе, система создаст и синхронизирует их из репозитория.
Совет
Перед запуском сравнения веток дождитесь окончания синхронизации.
Результаты сравнения
Категории результатов, получаемых при сравнении веток:
- Добавлено — в целевой ветке появились новые тест-кейсы, которых не было в базовой.
- Изменено — кейс есть в обеих ветках, но отличается хотя бы по одному полю.
- Удалено — кейс есть в базовой ветке, но отсутствует в целевой.
Для просмотра списка тест-кейсов по каждой категории нажмите на соответствующий значок с цифрой в селекторе над областью отображения списка.

У каждого измененного кейса виден список отличающихся полей, а также показано сравнение "было / стало".

Чтобы увидеть полный список результатов, нажмите на значок списка в селекторе.

Для Git-проекта после сравнения через MR/PR дополнительно доступен раздел комментариев. Для просмотра комментариев нажмите на соответствующую кнопку.

В разделе "Комментарии" доступны просмотр комментариев из Git-репозитория, сведений об авторе и MR/PR, а также открытие MR/PR. Для детального просмотра MR/PR нажмите "Открыть в репозитории".

Чтобы отправить комментарий в merge request в GitLab или GitHub, введите текст в поле "Новый комментарий". При необходимости добавьте в комментарий сводку с числом добавленных, измененных, удаленных кейсов и ссылкой на разбор. Для добавления сводки нажмите "Добавить сводку" под полем ввода текста комментария.

Чтобы завершить отправку, нажмите "Отправить в MR".

Для одобрения merge request от имени git-токена проекта нажмите "Одобрить MR". Если в форме заполнен комментарий, то он отправится в MR вместе с одобрением.

Перенос правок между ветками
В ряде случаев после выполнения сравнения требуется не только просмотреть различия, но и синхронизировать содержимое веток — например, перенести обновленные шаги из одной ветки в другую.
Примечание
Перенос правок между ветками доступен только для классических проектов.
Для переноса изменений:
- Выберите необходимую категорию результатов кейсов.
- Выберите нужный кейс в списке.
- Нажмите "Перенести" в верхней части карточки кейса.
- Укажите направление переноса: базовая или целевая ветка.
- Подтвердите перенос во всплывающем окне.

Перенос перезаписывает весь кейс.
Добавленные и измененные кейсы можно открыть в библиотеке. Для этого нажмите соответствующую кнопку в правом верхнем углу карточки кейса.

Тест-ран по изменениям
Для запуска тест-рана нажмите "Тест-ран по изменениям" в правом верхнем углу окна "Анализ влияния изменений".

Совет
Формирование тест-рана на основе результатов сравнения исключает риск пропуска измененных кейсов, неизбежный при ручном отборе.
В появившемся блоке отметьте результаты, которые необходимо включить: добавленные и/или измененные кейсы. Для этого выберите необходимые чек-боксы.

При необходимости задайте название прогона в соответствующем поле.

Для создания тест-рана нажмите "Создать тест-ран".

Для отмены действия нажмите соответствующую кнопку.
После создания откроется готовый тест-ран.