Оформление баг-репортов в Jira
Оформление баг-репортов в Jira
Введение
Jira — самый популярный инструмент управления проектами в IT-индустрии. Большинство компаний используют её для отслеживания задач, историй и, конечно, багов. Умение правильно оформить баг-репорт в Jira — обязательный навык тестировщика. Хорошо описанный баг экономит время разработчика и ускоряет его исправление.
Типы задач в Jira
| Тип | Описание |
|---|---|
| Bug | Дефект — что-то работает не так, как должно |
| Task | Технический задача (написать скрипт, настроить окружение) |
| Story | Пользовательская история (функциональность с точки зрения пользователя) |
| Epic | Большая фича, объединяющая несколько Stories |
| Sub-task | Подзадача внутри Story или Bug |
Обязательные поля баг-репорта в Jira
Summary (Заголовок)
Короткое, конкретное описание проблемы. Формула: Что? Где? При каком условии?
✅ Хорошо: "Кнопка 'Сохранить' дублирует запись при двойном клике на странице редактирования профиля"
❌ Плохо: "Не работает сохранение"
❌ Плохо: "Баг на странице профиля"
Description (Описание)
Стандартная структура:
**Шаги воспроизведения:**
1. Войти в систему как пользователь user@test.com
2. Перейти в Профиль → Редактировать
3. Изменить имя
4. Быстро дважды кликнуть на кнопку "Сохранить"
**Ожидаемый результат:**
Запись сохраняется один раз, отображается уведомление об успехе.
**Фактический результат:**
Создаётся две одинаковые записи в истории изменений, появляется ошибка 409 Conflict.
**Дополнительная информация:**
- В Network видно два одинаковых POST-запроса с интервалом 50мс
- Воспроизводится стабильно (5/5 попыток)
Environment (Окружение)
Браузер: Chrome 120.0.6099.109
ОС: Windows 11
Окружение: Staging (https://staging.example.com)
Версия приложения: 2.4.1-rc.3
Severity vs Priority
| Параметр | Что означает | Кто устанавливает |
|---|---|---|
| Severity | Насколько серьёзно влияние на систему | QA-инженер |
| Priority | Как срочно нужно исправить | Менеджер / Product Owner |
Значения Severity:
| Уровень | Описание | Пример |
|---|---|---|
| Critical | Система не работает, нет обходного пути | Нельзя авторизоваться |
| Major | Ключевая функция сломана | Нельзя оформить заказ |
| Minor | Функция работает, но с проблемами | Кнопка выровнена неверно |
| Trivial | Косметический дефект | Опечатка в тексте |
Labels и компонент
Метки помогают фильтровать баги:
- По компоненту:
auth,checkout,profile - По типу:
ui-bug,regression,performance - По платформе:
mobile,safari,ie11
Скриншоты и видео
Правила хорошего скриншота:
- Показывай весь контекст, а не только место бага
- Аннотируй стрелками, рамками, нумерацией
- Не публикуй конфиденциальные данные (настоящие email, телефоны)
- Если нужно — делай два скриншота: "до" и "после"
Инструменты для записи экрана:
- Loom — запись экрана с голосом, легко поделиться ссылкой
- OBS Studio — мощная бесплатная запись
- ShareX (Windows) — скриншоты + запись GIF
- Screenshot встроенный в Chrome —
Ctrl+Shift+I→Ctrl+Shift+P→ "screenshot"
Связывание баг-репортов в Jira
- Linked Issues: баг → "blocks" Story → баг → "is duplicated by" другой баг
- Affects versions: в какой версии появился баг
- Fix version: в какой версии планируется исправление
Жизненный цикл бага в Jira
Open → In Progress → Code Review → Testing → Done/Closed
↑ ↓
└──────────── Reopened ──────────────┘
| Статус | Значение |
|---|---|
| Open | Зарегистрирован, ждёт разработчика |
| In Progress | Разработчик взял в работу |
| Code Review | Код на ревью |
| Testing | QA проверяет исправление |
| Done | Исправлено и проверено |
| Reopened | QA нашёл, что баг не исправлен |
Частые ошибки в баг-репортах
- ❌ Расплывчатый заголовок: "Не работает" → всегда конкретизируй что и где
- ❌ Нет шагов воспроизведения → разработчик не может воспроизвести
- ❌ Не указано окружение → баг может быть специфичен для браузера/ОС
- ❌ Нет скриншота/видео для визуальных багов → описание на словах неточно
- ❌ Смешивать несколько багов в одном тикете → каждый баг — отдельный тикет
Что мы запомним
- Jira: Bug, Task, Story, Epic, Sub-task — разные типы задач
- Summary = "Что? Где? При каком условии?" — кратко и конкретно
- Description = Шаги + Ожидаемый + Фактический + Окружение
- Severity (от QA) vs Priority (от PM) — разные понятия
- Аннотированные скриншоты и видео обязательны для визуальных и неочевидных багов
- Каждый баг — отдельный тикет; жизненный цикл: Open → Done / Reopened