Найденные дефекты в приложении подлежат последующему документированию, передачи разработчикам или иным ответственным лицам для принятия решения. Баг-репорт составляется максимально корректно, подробно и понятным языком. Чем грамотнее тестировщик опишет проблему в отчёте о дефекте, тем больше багов будет исправлено в короткие сроки. На проектах отчёты помогают собирать статистику об уязвимых местах приложения и помогают принять решение о дальнейшем их фиксинге.
Отчёт о дефекте, баг-репорт (bug report) — документ, объясняющий и показывающий условия для обнаружения дефекта с обозначением источника проблемы, приоритезацией, ожидаемого и фактического результатов.
Отчёт о дефекте в основе обладает рядом собственных атрибутов для заполнения. На практике используются не все признаки, добавляются уникальные, объединяются, например, как в баг-репортах jira, где приоритет и серьёзность совмещены. Ознакомьтесь со статусной схемой и жизненным циклом баг-репорта в посте «Жизненный цикл дефекта (Defect Lifecycle)»
Содержание:
Атрибуты и обязательные поля баг-репорта
- Уникальный идентификатор (ID) — в баг-трекинговых системах присваивается автоматически для показателя уникальности дефекта.
- Тема (Summary) — суть дефекта, отвечающая на вопрос «Что? Где? Когда?».
- Что? Результат или отклонение выполнения действий тестировщика согласно требованиям
- Где? Расположение дефекта в системе, компоненте приложения
- Когда? Событие, промежуток времени, условия способствующие появлению дефекта
- Подробное описание (Description) — подробное описание дефекта, дополнительная информация.
- Шаги для воспроизведения (Steps to reproduce) — последовательное изложение операций или действий, которые описываются максимально подробно и приводящие к появлению бага. В шагах глаголы пишутся в инфинитиве. Правильно: "Нажать", "Кликнуть", "Осмотреть", "Получить". Неправильно: "Нажмите", "Перейдите", "Примите".
- Фактический результат (Actual result) — фактически полученный результат, отличный от ожидаемого.
- Ожидаемый результат (Expected result) — ожидаемый результат, основанный на требованиях к продукту или иной документации.
- Вложения (Attachments) — дополнительные файлы в виде скриншотов, логов, видео.
- Серьёзность дефекта (Severity) — влияние дефекта на работоспособность приложения.
- Blocker (блокирующий дефект) — дефект, блокирующий дальнейшую работу с приложением, функционалом или тестируемой системой. Для продолжения работы необходимо исправление бага. Пример бага блокер: при запуске приложения появляется сообщение об ошибке с последующим закрытием.
- Critical (критический дефект) — дефект, приводящий в неработоспособность ключевой части бизнес логики проекта, включающая проблему с безопасность, падениями сервера без возможности обхода для продолжения тестирования или работы с приложением. Для продолжения необходимо исправление бага. Пример бага критикал: При выгрузке отчета, приложение выдаёт ошибку «500 Internal Server Error»
- Major (значительный дефект) — с данным дефектом работоспособность части бизнес логики работает некорректно, отличается от заявленных требований. Баги некритичны с возможностью работы тестируемого функционала другими средствами. Пример бага мэйджер: при делении на 0, калькулятор не выдаёт ошибки, в расчетном поле показывает «null». Необходимо сбросить на кнопку «C» для дальнейшей работы.
- Minor (незначительный дефект) — дефект, не нарушающий бизнес логику приложения, проблема интерфейса или отображения данных. Пример бага минор: При разрешении экрана 1024х768 на Android 7.1 в приложении у кнопки «О нас» уменьшается шрифт на 2pt.
- Trivial (тривиальный дефект) — дефект, не относящийся к бизнес логике приложения, зачастую сложно воспроизводимый, проблема сторонних сервисов. Не влияет на общее качество продукта. Пример бага тривиал: яндекс метрика возвращает ошибку «the server responded with a status of 499 ()»
- Приоритет дефекта (Priority) — очерёдность устранения бага.
Порядок исправления ошибок по их приоритетам: High -> Medium -> Low
- Высокий (High)
Дефект исправляется как можно быстрее. Наличие открытых багов с приоритетом «Высокий» являются критичными для продукта. Пример бага с высоким приоритетом: При покупке товара не рассчитывается скидка клиенту
- Средний (Medium)
Баг получает статус обязательного решения и исправления, но наличие некритично. Пример бага со средним приоритетом: после выгрузки отчета файл xls автоматически закрывается и открывается снова
- Низкий (Low)
Дефект не выступает критичным, требует исправления, но не требует срочного решения. Пример бага с низким приоритетом: в личном кабинете пользователя опечатка в названии поля контактных данных.
- Статус (Status) — текущее состояние дефекта на проекте.
Дополнительно встречаются следующие атрибуты отчета о дефекте:
- Окружение – платформа, на которой воспроизводится дефект
- Версия – версия приложения
Баг репорт пример
Требования к продукту: Если пользователь ввёл одновременно координаты X1, Y1, X3, Y3 и нажал кнопку «Построить», выдавать сообщение об ошибке «Введите координаты X1, Y1, X3, Y3 не равные 0»
Уникальный идентификатор (ID): RE-2211
Тема (Summary): Не появляется сообщение об ошибке на форме построения квадрата после нажатия кнопки «Построить»
Подробное описание (Description): Согласно требованиям, при вводе X1, Y1, X3, Y3 равных нулю и нажатия на кнопку «Построить» появляется сообщение «Введите координаты X1, Y1, X3, Y3 не равные 0» без дальнейшего построения квадрата
Окружение: Win10
Шаги для воспроизведения (Steps to reproduce):
# Перейти в каталог C:\Cube
# Открыть программу Cube.exe
# Ввести следующие значения: X1=0, Y1=0, X3=0, Y3=0
# Нажать кнопку «Построить»
Фактический результат (Actual result): Сообщение об ошибке «Введите координаты X1, Y1, X3, Y3 не равные 0» после нажатия не появляется. Программа отработала.
Ожидаемый результат (Expected result): Появляется сообщение «Введите координаты X1, Y1, X3, Y3 не равные 0» без дальнейшего построения квадрата
Вложения (Attachments):
Серьёзность дефекта (Severity): Major
Приоритет дефекта (Priority): Medium
Статус (Status): Открыт
Баг репорт на английском пример
Summary: Changes in HTML doc currently opened in browser is not saved after click on [Save] button in Text Edit app
Environment (optional): OS: any (Win, Android)
Browser: Firefox, Opera, Chrome (any version)
Build version: Text Edit v1.1.23b
Priority: Medium
Severity: Major
Steps to reproduce:
# Launch text editor app;
# Open any html file that was previously opened in browser;
# Make any changes in content HTML document;
# Save changes in document;
# Reload page in your browser
# Observe the result on screen in your browser
Actual Result: Changes are not saved, previous version of HTML doc is displayed.
Expected Result: The document is displayed without any corruptions and shows changes made during steps
Материалы