Bugzilla: экспресс-гайд

Что такое Bugzilla

Бесплатный баг-трекер с открытыми исходниками, сайд-проект создателей браузера Firefox. «Багзилле» уже 25 лет, она 1998 года рождения — так долго могут жить только качественные ИТ-проекты (ну ок, просто очень надежные).

Нужно ли осваивать Bugzilla тестировщику-новичку? Скорее всего — да; если не прямо сейчас, точно понадобится позже; хотя бы потому, что другой популярный баг-трекер, Jira, уже не работает в России — и Bugzilla может заменить. 

Несмотря на бедноватый интерфейс для 2023 года, и неидеальную функциональность, этот трекер как ни странно котируется у разработчиков элитного уровня — глядя на список проектов и ИТ-компаний на официальном сайте. Кроме типичных инди-проектов, в Bugzilla работают команды Linux Kernel, Eclipse, GCC, KDE, Wine.

Может ли Bugzilla заменить Jira

По первых, Jira платная, во вторых закрытый код; в третьих, и это главное, Jira официально ушла из России. Существующие подписки были блокированы (и продолжают блокироваться). Все же, официальную подписку приобрести сложно, но можно, окольными путями (особенно если иностранный партнер заинтересован в том чтобы российская команда продолжала работать в Jira); существуют сервисы, работающие за комиссию 25%. Кто-то продолжает работать в Jira, не видя альтернатив, тем более что продукт действительно качественный.

  • Особенно для функционального тестирования
  • И приоретизации задач
  • Возможности планирования и мониторинга трудно сравнить с бесплатными аналогами
  • И гибкость, в опытных руках, для любых задач и любых масштабов

Чем отличается Bugzilla от Jira

  • Юридические/политические проблемы Jira, то есть лицензия и сложности с ее заказом/продолжением/оплатой. В Bugzilla этих проблем просто не существует.
  • Архитектура. Jira построена на MySQL, Oracle, PostgeSQL, Perl. Bugzilla — J2EE, Tomcat, Lucene, MySQL, Oracle, PostgreSQL.
  • Коммуникация с серверами в Bugzilla значительно меньше, чем в Jira. Bugzilla можно запускать много экземпляров на одном сервере, Bugzilla очень простая; Jira — сложная система, работающая совершенно иначе. Для Bugzilla-сервера в крупных проектах рекомендуется выделить как минимум 1 Гб оперативки и нужен хороший процессор. Что касается Jira, в комьюнити Atlassian рекомендуют хранить не более 200 000 багов в одном Jira-экземпляре.
  • О приоритизации дефектов перетаскиванием мышкой в Bugzilla придется забыть (как и о множестве других удобных функций в интерфейсе). 
  • Дашборд с кастомными гаджетами. Саммари с прогрессом, репортами — этого нет в Bugzilla
  • Трекинг релиза в реальном времени. Легкость отслеживания состояния релиза всеми участниками команды в любой момент — здесь Bugzilla тоже не блещет.
  • Атачменты. В Bugzilla можно прикрепить только один файл за один раз.
  • Размер атачмента только 1 Мб (в Jira — 10 Мб)
  • Канбана нет в Bugzilla (то есть поддержки канбан-досок). Впрочем есть костыли, об этом — в конце.
  • Интерфейс совершенно несравним с Jira. Комьюнити старается что-то улучшить в этом плане, надо отдать должное, но пока не очень получается. И видимо вряд ли получится в будущем.
  • Кастомные поля в репортах в Bugzilla есть, несколько типов, но тоже несравнимо с их количеством в Jira (плюс еще плагины). 
  • Рабочие процессы (воркфлоу) — в Bugzilla администратор прописывает глобальный воркфлоу для всех продуктов, редактируя матрицу; в Jira пользователи могут задать много рабочих процессов, в зависимости от типа проекта, изменять их статусы/переходы и т.п.
  • Поиск. В Bugzilla есть неплохие функции поиска, но Jira намного гибче и мощнее и в этом плане тоже.

Жизненный цикл бага в Bugzilla

Жизненный цикл дефекта в Bugzilla
Жизненный цикл бага в Bugzilla
Жизненный цикл бага в документации Bugzilla
Жизненный цикл бага в официальном гайде Bugzilla

Функциональность

  • Подключается к другим инструментам багтрекинга и управления тестированием
  • Настраиваемые функции поиска
  • Настраиваемые уведомления об изменении статусов багов
  • Ведение истории изменения статусов
  • Можно регистрировать зависимости между багами, и графически их отображать
  • Прикреплять к багам дополнительные файлы (только рисунки)
  • Несмотря на бесплатность и открытость, обладает достаточной защищенностью, подтвержденную аудитами
  • Есть веб-версия (чем мы далее и воспользуемся)
  • Можно настраивать слежение за интересующими багами и проектами/компонентами
  • Локализация, в том числе русская в десктопной версии

Блиц-практикум

Установка/Регистрация

Десктопная версия написана на древнем языке Perl и работает на MySQL; установка может быть сложна для QA-новичков. Нужно (было бы) поставить целый пакет из:

  • Perl (Active Perl)
  • БД MySQL/PostgreSQL/Oracle
  • Веб-сервер (на котором запускать SGI-скрипты)
  • Саму Bugzilla
  • Perl-модули
  • Мейл-агент

Но есть другой вариант для новичка в QA, гораздо проще и быстрее — веб-версия Bugzilla. Чтобы освоить основные операции в Bugzilla, ее будет достаточно. Заходим по ссылке, и видим следующее:

Регистрация в Bugzilla

Создаем экаунт (нажимаем большую кнопку “New Account” справа) и видим:

Создать экаунт в Bugzilla

Вводим свою почту, подтверждаем, что ознакомились с неким “Этикетом поведения в сообществе Bugzilla” и нажимаем «Создать экаунт» (Create Account). 

После регистрации можно привязать к Bugzilla свой GitHub-экаунт (который желательно иметь уже давно), и в дальнейшем входить через Гитхаб, что удобнее.

Зарегистрировались, подтвердились, вошли в свой личный экаунт в Bugzilla:

Зарегистрировались в Bugzilla

Создание бага

Тестировщик ищет баги, и когда находит, вносит данные о них в баг-трекер. Чтобы создать новый баг, нажимаем крупную кнопку с плюсом — “New Bug” (Создать).

Появится страница выбора приложения, в котором мы (якобы) нашли баг:

Создание бага в Bugzilla

Нажимаем, например, “Other Products” справа внизу, и далее видим:

Регистрация бага

Далее нажимаем, к примеру, приложение “Calendar”. Появится окно запроса/уточнения, в котором нужно указать суть проблемы/бага

Завел баг в Bugzilla

В этом поле поиска (с подсказкой “Short summary of issue”) вводим, например, слово “fail”, как достаточно частое слово в описании любого бага, нажимаем «Искать похожие баги» («Find similar issues») и видим список багов, содержащих в описании это слово:

Регистрация бага

Нажимаем сверху кнопку “Своего бага я здесь не вижу” (My issue is not listed), раз его нет, значит сейчас будем создавать; после нажатия оказываемся на странице заполнения атрибутов нового бага в системе:

Атрибуты бага в Bugzilla

В правом нижнем углу переключаемся на стандартную форму заполнения (Switch to the standard bug entry form), и заполняем:

Баг в Bugzilla

Поля, которые тестировщик должен заполнить, когда создает баг:

  • Продукт (у нас уже выбран Календарь)
  • Компонент (модуль, часть продукта по функциональности)
  • Тип — дефект
  • Версия
  • Короткое описание (Summary)
  • и другие поля, по желанию

После заполнения нажимаем “Отправить баг” (Submit bug). Теперь баг создан.

Поиск багов

Возвращаемся на главную страницу и жмем крупную кнопку “Advanced Search”. Появится окно поиска по всевозможным критериям:

Поиск бага

Далее сверху переключаемся на вкладку “Simple Search”. Вводим в поиск наше волшебное слово “fail”, нажимаем “Search”, и видим список всех открытых багов (точнее не всех, а только 500):

Поиск бага в Bugzilla

Теперь переключаемся на вкладку «Advanced Search» в верхней панели сайта. Это вкладка по умолчанию, для поиска по точным критериям. В строке поиска вводим, опять же, слово “fail”, в пяти окнах ниже уточняем запрос, выбрав только Client Software->Calendar, и нажимаем кнопку “Search”. Видим список открытых багов в этом приложении:

Открытые баги

Настройка Bugzilla

Настройки (крупная кнопка Preferences на главной странице) — там можно настроить:

  • Вход на сайт (доступна двухфакторная аутентификация, для безопасности)
  • Активные сессии в Bugzilla
  • Уведомления на почту о всех событиях с багами
  • Разрешения
  • Слежение за нужными компонентами.

В Saved Searches хранятся поиски, включая поиски других пользователей, расшаренные для всех:

Сохраненные баги

Можно настроить наблюдение за какими-то интересующими компонентами:

Отслеживание компонентов

Панель управления Bugzilla (дашборд)

В «My Dashboard» в верхней панели инструментов — прикрепленные к конкретному тестировщику (то есть тебе) баги, а также запросы.

Панель управления Bugzilla дашборд

Если багов нет (не найдены, не созданы), Bugzilla сообщает: «Zarro Boogs found».

Если баг создан, проверен, но по каким-либо причинам у разработчиков нет возможности (или желания, или необходимости) его фиксить, в Bugzilla принято ставить пометку WONTFIX.

Репорты

Баг-репорты — формализованный метод анализировать баги, следить за их статусом, поддерживать коммуникацию с другими участниками команды. В Bugzilla три типа репортов:

  • Графические
  • Таблицы
  • Дубликаты

Графические репорты

Генерируются в виде линейных графиков, столбиковых и круговых диаграмм. Такие «вижуалы» помогают представить текущую ситуацию с багами более наглядно. 

Чтобы сгенерировать графический репорт, нажимаем кнопку “ »» ” в верхней панели, далее нажимаем “Репорты” (Reports):

Баг репорты Bugzilla

Далее выбрать “Графические репорты” (Graphical reports):

Графические репорты Bugzilla

Появится окно генерации репорта, в котором нужно выбрать параметры графика по горизонтали-вертикали:

Параметры репорта

Здесь нужно будет указать параметры оси X и Y, и формат графика. Например, формат укажем “Стоблцы”; по вертикали найдем и выберем в выпадающем списке Серьезность (Severity), а по горизонтали — найдем и укажем «Компонент» (Component), промотав этот список почти до конца. В строке поиска напишем, опять же, слово “fail”, и нажимаем кнопку “Генерировать репорт” (Generate report). Количество багов в Компонентах, отсортированное по Серьезности, графически выглядит примерно так:

Столбцовая диаграмма в баг-репорте

Линейный график:

Линейный график Bugzilla

Круговая диаграмма:

Круговая диаграмма

Табличные репорты

Возвращаемся в Репорты и выбираем Табличные:

Табличный репорт

Выбираем в списках Серьезность и Ответственного за баг (Assignee), далее выбираем Client Software/Calendar, нажимаем «Генерировать», и сгенерируется вот такой табличный репорт:

Таблица в репорте

Можно также настроить вывод в CSV-формат.

Баги-дубликаты в Bugzilla

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

  • Полезно посмотреть частые баги
  • Если тестировщик нашел баг, хочет его зарепортить, и находит такой баг в списке (а скорее всего он там будет), нужно кликнуть номер бага, чтобы далее подтвердить повторное его появление; и можно добавить свою дополнительную информацию в комментарий — об обстоятельствах появления бага
  • А если бага нет в списке дубликатов, можно пробовать найти похожий баг, найти и затем добавить в комментарий дополнительные уточняющие данные
  • Если похожего нет, то это новый баг, и он тогда регистрируется; заполняются все поля и т.п., как на первом этапе туториала — ‘Создание бага

Итак, заходим в главной панели: “>>” — “Репорты”, на открывшейся странице находим “Дубликаты” (Duplicates):

Баши дубликаты

Выводится список:

Дубликаты в Bugzilla

Как видим, один и тот же баг может быть обнаружен 100 раз и более. Список можно сортировать по компонентам, типам, серьезности, и так далее. Если не находим нужное, nj чтобы уточнить поиск, проматываем вниз, к «Update Search», и там уточняем:

Баги в Bugzilla
  • Ограничить поиск следующими продуктами из списка правее
  • Искать только в списке 20 самых частых багов или во всех
  • Показывать только баги с Открытым статусом (здесь подробнее о статусах багов)

Например, посмотрим открытые баги в самой Bugzilla:

Открытые баги в Bugzilla

Agile-инструменты для Bugzilla

Открытая архитектура Bugzilla способствует экспериментам; уже много лет есть попытки, той или иной степени успешности, «приделать» к Bugzilla Agile-инструменты.

AgileTools Bugzilla Extension

Заявляется поддержка Scrum-процессов: планирование, мониторинг прогресса. Канбана нет.

Ссылка

BzKanban

Плагин для создания канбан-доски, должен работать с 5 версией Bugzilla.

Ссылка

KanbanBoard

Фронтенд-плагин для канбана

Ссылка

Kanbanzilla

Канбан-доска для Bugzilla

Ссылка

Scrumbugz

Аддон для управления спринтами

Ссылка

***

Какой была ваша первая зарплата в QA и как вы искали первую работу?

Мега обсуждение в нашем телеграм-канале о поиске первой работы. Обмен опытом и мнения.

Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Мы в Telegram

Наш официальный канал
Полезные материалы и тесты
Готовимся к собеседованию
Project- и Product-менеджмент

? Популярное

? Telegram-обсуждения

Наши подписчики обсуждают, как искали первую работу в QA. Некоторые ищут ее прямо сейчас.
Наши подписчики рассказывают о том, как не бояться задавать тупые вопросы и чувствовать себя уверенно в новой команде.
Обсуждаем, куда лучше податься - в менеджмент или по технической ветке?
Говорим о конфликтных ситуациях в команде и о том, как их избежать
$1100*
медианная зарплата в QA в июне 2023

*по результатам опроса QA-инженеров в нашем телеграм-канале

Собеседование

19%*
IT-специалистов переехало или приняло решение о переезде из России по состоянию на конец марта 2022

*по результатам опроса в нашем телеграм-канале

live

Обсуждают сейчас