сообщить о баге что это
Как правильно сообщать о багах, чтобы их быстро исправляли
2017-02-17 13:57:52 2021-09-17 14:03:09
В разгар сосредоточенной деятельности программистов отвлекают вопросы в скайпе. Иногда достаточно ответить, но бывает, выясняется, что на проекте возникла ошибка, требующая исправления, и мы начинаем уточнять детали, создаем задание в багтрекере, согласовываем сроки решения. А возвращаясь к прерванному делу, обнаруживаем, что прошло сорок минут. А потом менеджер спросит: «Вася, почему ты задачу оценил в 7 часов, а выполняешь второй день?»
Уважаемый заказчик! Когда на проекте обнаруживается неполадка, и вы хотите быстрее сообщить о ней в чат, помните следующее.
Если изложить суть непонятно или сумбурно, на выяснение деталей уйдёт дополнительное время, которое оплачиваете вы. При этом от текущих дел отрываются один, а то и несколько сотрудников. | |
Может создаться иллюзия срочности. Например, разработчик попытается воспроизвести указанный дефект, не дождавшись ответов на уточняющие вопросы, и сразу попытается его исправить, что хорошо, если проблема критическая, плохо, если минорная (а есть более важные задания), и очень плохо, если вы вообще не планировали исправление. | |
Возможна и обратная ситуация: обсуждаемая в скайпе неполадка может там и остаться. Многие сотрудники справедливо полагают, что решение вопроса начинается с заведения задачи в багтрекере. Скайп — лишь инструмент коммуникации, где можно оперативно обсудить текущий проект. В багтрекере же фиксируются задания, комментарии и принятые решения. Разбор спорных ситуаций производится тоже по багтрекеру. Иными словами, если вы собираетесь написать в скайпе что-то вроде «было бы неплохо сделать так. », а потом, спустя неделю, возмущаться, почему до сих пор «так» не реализовано, то, пожалуйста, не надо. | |
Если вы не заведёте задачу в багтрекере, её заведём мы. Тогда следует проследить, что с ваших слов записано верно. |
Что надо сделать?
Время идёт, проект не готов, а бюджет не резиновый. Есть два варианта.
Первый. Наш сотрудник (тестировщик, специалист службы поддержки или менеджер проекта) воспроизведёт неполадку, уточнит её критичность, занесет информацию в багтрекер, мобилизует программистов и обозначит примерный срок завершения. Такая схема успешно применяется, если бюджет проекта позволяет оплатить участие дополнительного специалиста.
Второй. Вы можете завести задачу самостоятельно. Если хотите, чтобы проблема была решена быстро, она должна быть правильно понята. С этого момента подробнее.
Заголовок
Итак, возникла неполадка, о которой нужно заявить. Первое, что указываем при заведении задачи, — это заголовок, при первом взгляде на который должно быть понятно, что случилось. Заголовок должен отвечать на три вопроса.
«Что?» — что, собственно, произошло?
«Где?» — в каком месте интерфейса вы видите проблему?
«Когда?» — при каких обстоятельствах проявляется проблема?
Приведем примеры, когда заголовок не отвечает ни на один из вышеуказанных вопросов.
Примеры, когда заголовок отвечает только на часть вопросов.
Примеры хороших заголовков, отвечающих на вопросы «Что? Где? Когда?».
Описание
В большинстве случаев, при хорошо составленном заголовке описание проблемы может даже не потребоваться. С другой стороны, качественно заполненное поле «Description» может нивелировать недостатки заголовка, и даже указать на решение. Были случаи, когда ошибка, имеющая детальное описание, исправлялась в течение десяти минут, а без такового — несколько часов. В первом случае разработчик сразу понял, какую строчку кода ему править. Во втором — полдня отлаживал код, прежде чем выяснил причины сбоя.
Что нужно указать в описании задачи.
Подробности | Помогающие воспроизвести неполадку и навести разработчика на возможную причину ошибки. Например, когда вы по пунктам описываете, что делаете, и как это приводит к проблеме. Выполняя эти шаги, разработчик воспроизведёт ошибку под отладкой и сможет приступить к её исправлению. | |
Фактический результат | Напишите, что конкретно происходит. | |
Ожидаемый результат | Напишите, что должно происходить. Упуская этот пункт, вы вынудите программиста искать ответ в требованиях, что займет время. Если явных требований не задокументировано, изложите собственное мнение, иначе разработчик всё равно обратится к вам и будет ожидать ответа, что отложит решение проблемы. Или исправит, как сочтет нужным, а его видение может отличаться от вашего. | |
Скриншот | В некоторых случаях заменяет тысячи слов, особенно если замечание касается интерфейса или дизайна. |
Приоритет
Создавая задачу, вы можете определить степень серьёзности, исполняя роль руководителя проекта (ведь вы, по факту, им и являетесь). Градации серьёзности следующие.
Вот основное, что следует знать о заведении отчётов о дефектах в багтрекерах, и чаще всего этого достаточно для эффективного взаимодействия с разработчиками. Ну а если что-то действительно важное, всегда можно сообщить в скайпе: «Ребят, я там баг завёл срочный, вот ссылка на него. Когда исправите?».
Как сообщить о баге
Спасибо за ваше терпение и за то, что помогаете нам улучшить нашу игру! Ваш вклад и ваши усилия для нас бесценны.
Если вы наткнулись на баг во время игры
О большинстве багов вы можете сообщить, если наведете курсор мыши на ту часть экрана или объект, с которым возникает проблема, и зажмете комбинацию клавиш Alt+B. Это можно сделать прямо во время игры. После этого откроется интерфейс “Сообщение об ошибке”. Чтобы отправить сообщение об ошибке, вам нужно будет подтвердить согласие на обработку данных.
В выпадающем списке Context укажите, с каким предметом, персонажем, способностью, диалогом и т.д. возникает проблема. То, на что вы наводили курсор перед тем как вызвать интерфейс сообщения об ошибке, должно быть в этом списке.
Ниже в текстовом поле опишите возникшую проблему.
Если это что-то очевидное, например, опечатка, то достаточно короткого описания (“В данном тексте опечатка такая-то, а надо так-то”). Если проблема более сложная, то необходимо описать её более детально и по возможности сообщить, каким образом проблему можно воспроизвести.
Также обратите внимание на выпадающий список Aspect (аспект) перед отправкой. Аспект позволяет сообщению об ошибке быстрее попасть к тому специалисту, который будет заниматься его исправлением. Вы можете выбрать один из следующий аспектов: Sound, Mechanics, Narrative, UI, Code, Visual, Animation и Localization.
Также если баг возникает с какой-то локацией в игре, то вам необходимо выбрать название этой локации в списке Context, а в Aspect оставить None.
Если ваша игра вылетает
Если ваша игра зависает или вылетает, пожалуйста, отправьте нам баг-реторт с описанием проблемы через портал поддержки игроков. Чтобы мы смогли установить причину проблемы, нам понадобятся от вас несколько файлов: логи, сохранение, если оно есть, файл *.dmp.
Чтобы у вас начали сохраняться нужные нам логи, вам необходимо включить в Steam логирование. Сделать это можно следующим образом: запустите Steam, выберите в библиотеке Pathfinder: Wrath of the Righteous и откройте свойства игры
На вкладке “Общие” в “Параметрах запуска” напишите “logging” в текстовом поле:
Сообщить о баге что это
Что пишут в блогах
В этом видео Крутов рассказал про инструменты Moon и Moon Cloud. Обсудили новые фичи: поддержка Selenium 4, Playwright, Cypress.
29-30 октября в Москве пройдет международная конференция по тестированию SQA Days!
Продолжу хвастаться статусом книги.
Онлайн-тренинги
Конференции
Heisenbug 2021 Moscow
Большая техническая конференция для тестировщиков
5-7 октября 2021, онлайн
Что пишут в блогах (EN)
Разделы портала
Про инструменты
Автор: Энди Найт (Andy Knight)
Оригинал статьи
Перевод: Ольга Алифанова
Баги, баги, баги! Нельзя обсуждать разработку ПО, не затрагивая тему багов. Поначалу термин «баг» может казаться странным жаргоном для «дефекта». По коду и машинам что, бегают жучки и паучки? Как правило, нет, но иногда таки да! В 1947 году Грейс Хоппер нашла мертвого мотылька, застрявшего в реле гарвардского компьютера Mark II, и в отчете о «жучке» шутила, что нашла настоящего жука за компьютерным дефектом. Несмотря на то, что изобретатели вроде Томаса Эдисона использовали термин «баг» для описания технологических глюков задолго до 1947 года, именно этот мотылек зафиксировал терминологию для компьютеров и ПО.
Баги случаются. Почему? Потому что никто не идеален, и поэтому не существует идеального ПО. Создание высококачественного ПО требует хорошего дизайна для устойчивости к багам, хорошего внедрения, дабы избежать багов, и хорошей обратной связи, чтобы сообщить о багах, когда они неизбежно возникнут. В статье я собрал лучшие практики для создания хороших баг-репортов.
Что такое баг-репорт?
Баг – это всего-навсего дефект. Термин относится исключительно к проблемам в ПО. Однако баг-репорт (или тикет) – это письменное описание, детализирующее дефект. Как правило, баг-репорты пишутся в инструменте управления проектом вроде Jira. Баг и отчет о нем – это две разные вещи. Естественно, что не обнаруженные баги могут отлично существовать в продукте, когда отчетов о них еще не существует.
Когда надо писать баг-репорт?
Баг-репорт надо писать, когда обнаружена новая проблема, которая выглядит как дефект. Проблемы обнаруживаются в ходе такой тест-деятельности, как прогон автотестов или ручное исследовательское тестирование. Их также находят при разработке новых фич. В худшем случае их найдут пользователи и начнут жаловаться!
Заметьте, я использую термин «проблема», а не «дефект». Всем проблемам нужны решения, но не все проблемы – это действительно дефекты. Иногда сообщивший о проблеме пользователь не знает, как должна работать фича. Иногда дело в неправильно сконфигурированном окружении. Член команды, выявивший проблему или получивший жалобу от клиента, должен провести небольшое расследование, чтобы убедиться, что проблема действительно выглядит как дефект ПО. Первоначальное расследование нужно проводить немедленно, пока еще жив контекст.
Если проблема выглядит реальным дефектом, а не недопониманием и не плохой настройкой конфигурации, детектив должен поискать эту проблему среди существующих баг-репортов. На нее или что-то похожее мог недавно наткнуться кто-то еще. Баги также могут появиться вновь даже после «исправления». Добавление информации в существующие репорты – куда лучшая практика по сравнению с созданием дубликатов.
Что, если проблема неясна? Если я не уверен, баг это или другой тип проблемы, я спрашиваю коллег. Я пытаюсь задавать вопросы вроде «Выглядит ли это правильным? Что может вызывать такое поведение? Может, я что-то сделал не так?» Слепо плодить баг-репорты для каждой проблемы – вести себя как мальчик из сказки, который кричал «Волки»: команда будет менее чувствительной к предупреждением о реальных, важных багах. Небольшое расследование демонстрирует ваши хорошие намерения и во множестве случаев избавляет команду от лишней работы позднее. Несмотря на это, в случае сомнений создать репорт лучше, чем не создать. Небольшое количество ложноположительных результатов лучше риска реальных проблем.
Зачем нужны баг-репорты?
При обнаружении реального бага команда должна написать о нем репорт. Просто поговорить о баге проще и быстрее, особенно в небольших командах, но фиксировать это письменно важно для целостности процесса разработки ПО. Письменный отчет – это артефакт, который требует решения.
Баг-репорты помогают сделать исправление багов частью процесса разработки. Они привлекают к багам внимание, и их непросто игнорировать или проморгать.
Что входит в баг-репорт?
Вне зависимости от инструмента или процесса, хорошие баг-репорты содержат следующую информацию:
Я всегда использую этот список в качестве шаблона, создавая баг-репорты. К примеру, в баг-репорте в Jira я делаю каждый пункт списка заголовком в поле «Описание». Иногда я пропускаю разделы, если мне недостаточно информации, но, как правило, не открываю баг-репорт, не имея на руках большей части этих сведений.
Как обращаться с баг-репортом?
Одним словом: профессионально. Обращайтесь с баг-репортами профессионально. Что это значит?
Давайте как можно больше информации в своих репортах. Баг-репорты – это форма коммуникации и записи. Когда вы не говорите толком ничего, кроме «ну, сломалось», это не поможет никому решить проблему. Давайте полезную, актуальную информацию, чтобы те, кто не находил этот баг, вникли в него достаточно, чтобы суметь помочь.
Приоритезируйте баги с умом. Находя проблему, исследуйте ее. Если вам нужно другое мнение, попросите о нем. Когда кто-то отправляет вам или команде баг-репорты, приоритезируйте их, исправьте баги, и отчитайтесь перед тем, кто сообщил о проблеме. Не игнорируйте проблемы и не давайте им гнить.
Относитесь к баг-репортам, как к историям. Баги – это обычно неожиданные, заковыристые сюрпризы. Информация в баг-репорте может быть неполной или даже неверной, потому что представляет из себя наиболее вероятные предположения о дефекте. Артефакт репорта – это живой документ, в него можно добавлять информацию и обновлять ее по ходу работы. Члены команды должны помогать друг другу предоставлением доступной информации.
Не стыдите и не стыдитесь. Баги случаются. Даже гениальный разработчик делает ошибки. Зрелая, здоровая команда тщательно заводит баги, быстро исправляет их, и предпринимает меры, чтобы в будущем избежать подобных дефектов. Разработчики не должны стигматизировать баги или пытаться ограничить количество багов. Тестировщики не должны хвастать количесвтмо найденных багов. Речь в репорте должна концентрироваться на ПО, а не людях. Сплетни и публичная порка за баги – это абсолютное «нет». Любой стыд за баги может толкнуть команду на путь плохих практик. Любые регулярно возникающие проблемы должны разбираться напрямую с ответственными, или с помощью менеджмента.
Хорошие баг-репорты – это важно.
Создание баг-репортов критично важно для сотрудничества команды. Организованная, точная информация может сберечь кучу времени, потраченную на бесплодные попытки воспроизвести проблему или попытаться ее исправить. Помните об этом в следующий раз, когда наткнетесь на баг!
Баг и баг репорт
Как Вы думаете, какой навык тестировщика — самый важный?
Может автоматизация тестирования?
Что-то из soft-skills?
Умение работать в команде?
Как насчет поиска багов?
Написание хороших баг репортов — это самый важный навык тестировщика!
Потому что хороший баг репорт это:
Ни один другой навык не приносит столько пользы, как этот)
Вы можете быть супер-аналитиком, находить по 100 багов за день, общаться и дружить со всеми разработчиками. Но, если Вы не умеете создавать баг репорты — баги не будут исправляться. А если баги не будут исправляться… Вы сами можете догадаться, что произойдет 🙂
Научиться писать качественные баг репорты — просто!
Каким образом и что для этого нужно?
Читайте в этой статье)
Что такое Баг / Дефект?
Перед тем, как начать разговор о баг репортах, стоит очень хорошо разобраться, что такое “баг”, ведь его мы и будем описывать 🙂
Слово “баг” — это технический жаргон [1] [2]. Оно используется в разговорах, статьях и приложениях (Jira, TestRail и т.п.)
Стандарты [3] и книги [4] используют другое название — “дефект”, оно более профессиональное.
Так как это не научная статья, мы будем использовать слово “баг”, как более распространенное и привычное 🙂
Существует несколько определений бага:
Данные определения описывают баги в коде и их сложно применить к багам в требованиях, UI / UX и т.п.
На этапе проверки требований у нас нет компонента, системы (см. определение 1,3) или приложения (определение 2). У нас есть только текст, который их описывает, если он вообще существует 😂
Более универсальное и доступное определение приведено в книге [4]:
Баг — это отклонение фактического результата от ожидаемого результата.
Давайте рассмотрим несколько примеров багов.
Откуда берутся баги?
Баги являются следствием ошибок.
В свою очередь, ошибка — это действие человека, которое приводит к неправильным результатам [4].
Причин возникновения ошибок множество [5]:
Ошибки делают все и делают их всегда.
Это неотъемлемая часть природы человека и ее невозможно изменить или обойти.
Лучшие спортсмены, ученые, инженеры, политики, актеры, музыканты — ошибаются. Бизнес-аналитики, разработчики, тестировщики, дизайнеры, администраторы, переводчики и т.п. — не исключение…
Все ли баги нужно исправлять?
Нет, не все.
В идеальном мире — наверное да, но мы не знаем где он 🙂
Что мы знаем, так это то, что все люди ошибаются. Тестировщики тоже. Иногда Вы можете замечать вещи, которые багами не являются.
Это может происходить потому что вы:
Ситуация, когда Вы создаете “ложный” баг репорт — называется false-fail result [3].
Такие “моменты” характеризуют качество документации, качество подготовки к тестированию, качество проведения тестирования и анализируются QA (Вы ведь уже знаете, что QA ≠ тестирование?)
Если баг на самом деле существует, то перед исправлением всегда нужно оценивать его критичность, срочность и сложность исправления.
Zero bug policy — отличный процесс работы с багами при использовании гибкой разработки
Жизненный цикл бага
Каждый найденный баг всегда проходит через конкретные “этапы”, которые называются жизненный цикл бага.
Цикл, его этапы и переходы между ними сильно зависят от процесса тестирования и разработки, используемого в компании. Поэтому здесь приводится базовый процесс, этапы которого существуют в 99% случаев. Он прост для понимания, но помните, в реальном мире все немного сложнее 🙂
Не путайте жизненный цикл бага и жизненный цикл ПО — это не связанные вещи!
Давайте рассмотрим каждый этап и переходы между ними подробнее.
Этапы жизненного цикла бага
1. Открыт (Open) — баг создан, оформлен и передан разработчику / команде разработки
2. В Работе (In Progress) — ведутся работы по исправлению
3. Исправлен (Ready for check) — баг исправлен и передан тестировщику на повторную проверку
4. Закрыт (Closed) — баг проверен и больше не воспроизводится
Переходы бага между этапами жизненного цикла
Переходы между этапами жизненного цикла пронумерованы в соответствии с нумерацией списка ниже.
1. Открыт — Закрыт. Если баг — это “не баг”, он может сразу быть закрыт, без промежуточных операций.
Иногда этот переход выносят в отдельный этап жизненного цикла, который называется Отклонен (Rejected). Он используется для анализа процесса тестирования или оценки работы тестировщиков / разработчиков.
На некоторых сайтах можно прочитать, что “баг отклоняется разработчиком, если он считает, что дефект не важен”.
Мы считаем, что это не верно, потому что мнение разработчика — субъективное. Теоретически, он может “отклонять” баг если:
Если происходит отклонение бага, разработчик должен аргументированно описать, почему он не считает найденную неточность багом, а решение про исправление или закрытие должен принимать человек, который отвечает за качество (QA, PO, PM).
2. Открыт — В Работе. Баг подтвержден и передан разработчикам, которые начали работу над исправлением.
3. В Работе — Закрыт. Бывает, что в ходе исправления ошибки разработчик понимает, что это не ошибка, а что-то другое. (фича / неточность в требованиях, которую обсудили без тестировщиков и т.п.) В этом случае разработчик описывает, почему это не баг, и закрывает задачу.
Иногда этот переход выносят в отдельный этап жизненного цикла, Не Баг (Not A Bug). В таком случае задача возвращается тестировщикам, они ее пересматривают и либо закрывают, соглашаясь с разработчиком, либо исправляют описание и заново открывают.
Появление большого количества багов в статусе “Не Баг” говорит о проблемах в коммуникации и / или документации.
4. В Работе — Исправлен. Ошибку локализовали и исправили, она передана тестировщику.
5. Исправлен — Открыт. Тестировщик проверил исправление, баг все еще воспроизводится, то есть не исправлен. Он возвращается разработчику (возможно с указанием каких-то дополнительных деталей)
Этот переход может существовать как отдельный этап жизненного цикла бага — Переоткрыт (Reopened).
Появление большого количества багов в статусе “Переоткрыт” может говорить о проблемах в оформлении багов и использоваться для анализа качества работы тестировщиков.
6. Исправлен — Закрыт. Тестировщик проверил исправление, баг больше не воспроизводится.
7. Закрыт — Открыт. Если баг случайно закрыли, должна быть возможность его переоткрыть.
Не стоит переоткрывать закрытые баги, если они уже были исправлены, проверены и закрыты. Ситуация может возникать в ходе регрессионного тестирования.
Такой “операцией” Вы испортите аналитику и метрики + создадите путаницу в релизах и процессе работы и т.п.
Лучше создавать новый баг, скопировав закрытый и связав их между собой. Тогда путаницы не будет, а разработчику не придется искать ошибку, которую он уже исправлял 🙂
Теперь, когда мы разобрались с багами, причинами их возникновения и жизненным циклом — мы можем переходить к рассмотрению баг репорта 🙂
Что такое баг репорт (bug report)?
Баг Репорт (Bug Report) — документ, содержащий отчет о любом недостатке в компоненте или системе, который может привести компонент или систему к невозможности выполнить требуемую функцию. [IEEE 829]
Мы уже знаем, что такое баг, поэтому определение можно упростить.
Баг Репорт (Bug Report) — документ, содержащий информацию о найденном баге.
Другие названия этого документа:
Зачем нужны баг репорты?
Почему баги нельзя исправлять сразу, зачем писать отчеты? Лишняя работа, только время тратить… — типичный менеджер, который не слышал о качестве
Написание баг репортов — чрезвычайно полезный процесс, потому что:
1. Происходит фиксации факта существования бага
Есть репорт — есть прецедент для реакции.
Нет репорта — никто ничего не будет делать.
Именно поэтому не стоит писать баги в скайп / чат / говорить лично и т.п.
Есть вероятность, что о нем забудут (и вы, в том числе) и не исправят.
Потом баг найдет либо заказчик в ходе приемочного тестирования, либо клиент — и вряд ли они будут этому рады… Вы тоже не будете рады, когда разработчик скажет, что он впервые это видит.
2. Баг репорт помогает разработчику
Для воспроизведения и последующего исправления бага разработчикам нужна информация. Она должна быть максимально точной, полной и понятной. Без нее разработчику придется тратить время на поиск и анализ ошибки, и вряд ли он будет этому рад. Да и менеджмент не будет рад, так как разработчик будет заниматься не разработкой, а чем-то другим…
В докладе Егора Бугаенко Testing and Testers на TestCon 2020, именно об этом был 4-ый вопрос и объяснения, почему это важно. Рекомендую посмотреть 🙂
3. Появляется возможность приоритизации исправлений
Если у вас есть несколько багов — вам всегда придется выбирать, какой из них исправлять в первую очередь, потому что все сразу исправить не получится.
4. Появляется возможность анализа ошибок
Имея информацию о найденных дефектах Вы можете определять первопричины их возникновения и вносить изменения в рабочие процессы, чтоб их предотвращать. (Привет QA)
5. Тестировщик содействует устранению бага
Хорошо созданный баг репорт — это огромная помощь разработчику, так как из полученной информации он быстро сможет определить, где находится ошибка и исправить ее.
6. Появляется возможность контроля этапа исправления бага
Вы уже знаете, что до момента исправления, каждый баг проходит через определенные стадии жизненного цикла.
Наличие отчета о дефекте с изменяющимся статусом позволяет легко и быстро определять точное “положение” бага и контролировать его исправление.
7. Появляется возможность оценки качества продукта в текущий момент времени
Если в ходе тестирования было найдено 50 багов и все они были оформлены как баг репорты — вы, как менеджер, сможете оценивать готовность продукта, оценивать объем требуемых доработок, принимать решения о релизе и т.п.
Отчеты о дефектах дают командам очень полезную и важную информацию, которая необходима для контроля качества продукта.
Именно поэтому навык написания хороших отчетов критически важен для любого профессионала-тестировщика и его нужно освоить в совершенстве 😉
Атрибуты баг репорта
Баг репорт — это технический документ.
У него есть некий набор атрибутов (полей, параметров) для структуризации информации.
Атрибуты баг репорта можно разделить на 2 группы:
Основные поля
Дополнительные поля
Серьезность бага (Bug Severity)
Серьезность характеризует уровень влияния бага на работоспособность приложения / компонента и необходима для дальнейшего проставления приоритета.
Приведенные ниже уровни — не стандартизированы и могут отличаться в разных компаниях.
S4 | Blocker
Блокирующий — баг описывает ситуации, когда ПО не работает в принципе.
S3 | Critical
Критический — баг влияет на критический функционал или критические данные.
К критическому функционалу относятся функции приложения, без которого само приложение станет бессмысленным, либо перестанет выполнять свои основные функции.
Примеры критических функций в разных приложениях:
Помимо критического функционала, к критическим багам относятся:
S2 | Major
Серьезный — баг не влияет на критический функционал, но создает неудобства при использовании приложения / системы.
К этому уровню относятся баги, связанные с:
S1 | Minor
Незначительный — баг не влияет на бизнес логику приложения.
Чаще всего к этому уровню относятся баги в реализации UI (верстке), отсутствие переводов и т.п.
S0 | Trivial
Тривиальный — баг никак не влияет на качество продукта.
Из-за того, что такие баги не влияют на качество продукта, преднамеренно их не исправляют (они не “окупаются”). Обычно, правку делают в ходе реализации смежной задачи.
Типы багов
Дополнительный атрибут “Тип бага” необходим для обнаружения слабых мест в процессе разработки и тестирования, а также для их последующей корректировки.
Используемые типы багов определяются в зависимости от направления, размера и сложности проекта.
Приведенные ниже типы багов относятся к WEB сайтам.
UI (ошибка в верстке)
Баг в верстке — следствие ошибки в разметке (HTML) или стилизации (CSS) элемента страницы в специфическом окружении.
UX (ошибка в удобстве)
Баг в удобстве — неудобство / нелогичность работы с элементами / функционалом страницы.
Functional (ошибка в функционале)
Баг в функционале — несоответствие логики работы компонента заявленным функциональным требованиям.
SEO (ошибка в seo)
Баг в seo — ошибка, которая влияет на SEO (нарушение нефункциональных требований, касающихся seo).
Алгоритм создания баг репорта
Предположим, Вы нашли баг и приступаете к написанию баг репорта.
Ниже приведен алгоритм, следуя которому Вы точно ничего не упустите и снизите вероятность создания дубликатов или некачественных отчетов.
🔥 Если Вы хотите потренировать свой навык создания отчетов о дефекте и получить оценку с рекомендациями, Вы можете оставить заявку на получение практического задания по созданию баг-репортов.
Пример хорошего баг репорта (bug report example)
Предположим, в ходе исследовательского тестирования Вы заметили следующее:
И Вы хотите создать отчет о найденном баге (нет перевода текстов ошибок).
Итоговый вариант может выглядеть так:
Заголовок / Краткое описание / Тема / Summary / Title
Не переведены на украинский язык тексты ошибок (что?) на форме “Зворотний зв’язок” на странице https://itawards.ua/ua (где?) в UA версии сайта (когда?)
Скриншот / видео
Скриншот / ссылка на скриншот
Шаги к воспроизведению
Фактический результат
Отображаются ошибки на английском языке
Ожидаемый результат
Отображаются ошибки на украинском языке
Серьезность
Кто внимательно рассмотрел изображение с багом (или решил сам протестировать форму) — мог заметить еще несколько “странностей”.
Например, некоторые тексты ошибок содержат грамматические ошибки, атрибуты полей содержат свойство autocomplete, которое не работает в большинстве браузеров, а анимация на форме зависает при наведении на любой из прямоугольников.
Может показаться, что это мелочи, и так оно и есть. Но если таких мелочей будет слишком много — продукт не будет вызывать доверия у клиента и его не будут считать качественным.
The Devil is in details.
🔥 Если Вы хотите потренировать свой навык создания отчетов о дефекте и получить оценку с рекомендациями, Вы можете оставить заявку на получение практического задания по созданию баг-репортов.
Пример баг репорта в Jira
Jira является одной из самых распространённых систем управления проектами в мире и очень часто используется в ИТ.
Так может выглядеть описанный выше баг репорт в Jira:
Пример баг репорта в Jira
Основные поля являются обязательными для заполнения при создании бага, без них задача просто не сохраниться 🙂
Ошибки при создании баг репорта
Создание хороших баг репортов требует определенных знаний, навыков и опыта.
Начинающим тестировщикам (и не только, как бы это ни было странно) иногда тяжело справляться с этой задачей, и они часто делают следующие ошибки:
Знание типичных ошибок помогает проверять самого себя (можно создать чек-лист) и позволяет создавать более качественные отчеты без возвратов на доработку!
Резюме
В статье мы рассмотрели все, что нужно знать начинающему тестировщику о багах, баг репортах и их жизненном цикле.
Мы поняли, что баг репорты — это чрезвычайно важные документы, потому что именно они описывают найденные в процессе тестирования дефекты, исправление которых и повышает качество продукта.
И именно правильное и качественное оформление баг репортов является ключевым навыком тестировщика.
🔥 Если Вы хотите потренировать свой навык создания отчетов о дефекте и получить оценку с рекомендациями, Вы можете оставить заявку на получение практического задания по созданию баг-репортов.
Если у вас есть вопросы или предложения — пишите нам в Телеграм!
Если вам интересно тестирования и Вы хотите получать актуальную информацию по этой теме — подписывайтесь на наш Tелеграм канал. У нас очень интересно: статьи, видео, тесты, опросы, нет спама 😉
Источники
Что такое баг?
Баг — это отклонение фактического результата от ожидаемого результата.
Здесь:
— фактический результат — это то, что мы “видим” или то, что произошло после проделанных действий
— ожидаемый результат — это ожидания наблюдателя, которые он получил из требований, спецификаций, любой другой документации, личного опыта и здравого смысла
Откуда берутся баги?
Баги являются следствием ошибок.
В свою очередь, ошибка — это действие человека, которое приводит к неправильным результатам.
Что такое баг репорт (bug report)?
Баг Репорт (Bug Report) — документ, содержащий отчет о любом недостатке в компоненте или системе, который может привести компонент или систему к невозможности выполнить требуемую функцию. [IEEE 829]
Баг Репорт (Bug Report) — документ, содержащий информацию о найденном баге.
Что такое Серьезность бага (Bug Severity)?
Серьезность характеризует уровень влияния бага на работоспособность приложения / компонента и необходима для дальнейшего проставления приоритета.