Система отслеживания ошибок Bugzilla Цель работы



Целью работы является отправка запроса об ошибке, поиск багов по об- щей базе данных, вывод зависимостей ошибок в графическом виде, составление отчётов об ошибках.

Краткие теоретические сведения

Bugzilla - приложение для отслеживания ошибок, разработанная «The Mozilla Organization». Приложения подобного рода позволяют разработчику или группам разработчиков отслеживать ошибки в приложениях и запросы на дополнение приложений новой функциональностью. Фактически, Bugzilla ис- пользуется во многих корпорациях для разработки собственного программного обеспечения для корпоративных нужд.

Ключевым понятием системы является баг («Bug») — некоторый запрос по поводу ошибки в системе, или просто сообщение, требующее обратной свя- зи, и назначение системы — регистрация и предоставление заинтересованным лицам целостной информации о состоянии этого «Bug», включая интерфейсы редактирования, запроса и поиска, механизмы почтового оповещения.

Bug имеет свои атрибуты:

1) Product and Component (Продукт и компонент):

«Продукт». Основной атрибут, задающий структуру. Каждый «Product» состоит из набора компонентов.

Например, продукт "Bugzilla" состоит из нескольких компонентов:

· Administration – администрирование;

· Bugzilla-General – всё, что не вписывается в другие компоненты, или охватывает несколько компонентов;

· Creating/Changing Bugs – создание, изменение и просмотр ошибок;

· Documentation – документация по продукту;


· Email – всё, что связано с электронной почтой;

· Installation – процесс установки Bugzilla;

· Query/Buglist – поиск ошибок и просмотр «баг-листов»;

· и т.д.

2) Status (Статус)

Основной атрибут, определяющий текущее состояние бага, то есть меру его активности — от самого «начального» состояния, когда он даже не под- твержден, как баг, до благополучного завершения, когда баг исправлен/решен, что подтверждено Службой Качества.

Статус может быть пяти видов: UNCONFIRMED

«Не подтвержден». Наличие этого состояния зависит от настройки кон- кретного продукта. Например, если считается, что баг-отчеты в продукт могут составлять неконтролируемое множество пользователей (например, интернет- аудитория), то в этом состоянии имеется смысл. Тогда, для перехода в следую- щее состояние необходимо решение пользователя системы с правами

«canconfirm». Если же новые баги ставят только обученные сотрудники, то в это состояние, скорее всего не нужно.

CONFIRMED («Подтверждён»); IN PROGRESS («В процессе»); RESOLVED («Решён»);

VERIFIED («Проверен»).

3) Resolution («Решение»)

Этот атрибут имеет смысл только для багов в состояниях «RESOLVED»,

«VERIFIED», «CLOSED». Также, набор «решений» можно настраивать, но стандартный набор следующий:

· FIXED («Решено»);

· INVALID («Некорректно» — неправильная или некорректная поста- новка, не имеющая смысла);

· WONTFIX («Проблема есть, но решать ее не будем»);


· DUPLICATE («Дубль» — описанная проблема уже регистрировалась в определенном баге);

· WORKSFORME («А у меня работает…» — не удалось воспроизвести описанную проблему ни эмуляцией сценария, ни анализом кода);

· MOVED (Проблема перенесена в иную систему);

· LATER (Задача зафиксирована, но ее решение откладывается на не- определенный срок. Возможно для ее решение нужно некоторое внешнее собы- тие, или решение каких-либо задач).

4) Связанные пользователи:

· Assigned_To (Лицо (сотрудник, пользователь), ответственное за реше- ние (исправление) бага);

· Reporter (Пользователь, собственно составивший (заполнивший ин- формацию) о баге);

· QA (Пользователь, ответственный за проверку решения бага);

· CC («СС list»: Список людей, извещаемых при изменениях бага).

5) и др.


Ход работы

Создание учётной записи пользователя

Если вы хотите использовать Bugzilla, сначала нужно создать учетную запись. Зайдите на сайт https ://landfill .bugzilla .org /bugzilla -4.4-branch /, нажмите на «Open a New Account» (рис. 1).

Рисунок 1 – Создание учётной записи

Далее нужно ввести свой адрес электронной почты и нажать «Send». После указания своего e-mail вам придет письмо с ссылкой для под-

тверждения учетной записи. В нем необходимо нажать на ссылку активации учетной записи (рис. 2).

Рисунок 2 – Активация учётной записи


Далее введите имя, пароль и нажмите «Create». После успешного созда- ния учётной записи на главной странице появится соответствующая отметка (рис. 3).

Рисунок 3 – Успешное создание учётной записи

 

2. Создание «бага»

Для создания бага перейдите по вкладке «File a Bug», после чего нужно будет выбрать тип продукта (рис. 4).

Рисунок 4 – Выбор вида продукта

Далее нажмите на «All» и выберете конкретный продукт (рис.5).


 

Рисунок 5 – Выбор продукта Затем нужно установить атрибуты бага (рис. 6). Summary

Аннотация задачи/проблемы одним предложением. В правилах «хоро- шего тона» обязательно дублировать при регистрации нового бага содержимое

«Summary» в первом комментарии, так как атрибут «Summary» может быть не- сколько раз отредактирован, и будет утерян смысл бага (рис.6).

Version

Обычно используется для указания конкретных версий продукта (вернее компонента продукта), в которых наблюдается описанная проблема (рис.6).

Priority

Ответственный указывает приоритет (именно свою оценку приоритета) описанной проблемы или задания. Стандартный набор значений — от «P1» (наивысший приоритет) до «P5» (наименьший).

Severity

Указывает на критичность возникшей проблемы. Домен значений мож- но настраивать, стандартный набор следующий (рис. 6):

· Blocker (Разработка или использования продукта невозможна. Нужно немедленное исправление проблемы);


· Critical (Серьезные проблемы — не работает критический блок функ- ционала, наблюдаются серьезные ошибки, связанные с потерей данных и т. п.);

· Major (Проблема связана с важным функционалом продукта);

· Minor (Проблема связана с второстепенным функционалом продукта, или есть легкий обходной путь для этой проблемы);

· Trivial (Проблема косметического уровня — например, «недоработан- ный» интерфейс (опечатки, не выровненные поля, разнобой с цветами и т. п.);

· Enhancement (Запрос на доработку). Comments

Комментарии. Первый комментарий по багу — это «Description», остальные в форме редактирования бага именуются «Additional Comments» (рис. 6,7).

Misc (такие атрибуты можно установить, нажав на «Show Advanced Fields»)

URL

Ассоциированный с багом URL, указывающий на документ с описани- ем/постановкой проблемы, если таковой имеется.

Whiteboard

Текстовая зона свободной формы для задания кратких заметок или тегов


к багу.


 

 

Keywords

Ключевые слова, используемые для пометки и даже для классификации


багов. Набор ключевых слов «глобальный», общий для всех продуктов внутри Bugzilla, поэтому рекомендуется ответственно относиться к заведению каждого нового ключевого слов, чтобы не «замусоривать» общее пространство.

Platform

Вычислительная платформа (железо), на которой наблюдается проблема (рис.6).

OS

Операционная система, на которой наблюдается проблема (рис.6).


Attachments

К багам можно прикреплять файлы (например сценарии тестирования, патчи) (рис. 6).

Votes

Собрал ли баг сколько либо голосов. Используется, в основном, для ав- томатического перевода бага из состояния «UNCONFIRMED» в состояние

«CONFIRMED».

 

Рисунок 6 – Установка атрибутов бага

 

Рисунок 7 – Прикрепление файла

После заполнения всех указанных полей необходимо нажать кнопку Submit Bug внизу страницы для заведения проблемы в системе (рис. 7).

Далее должна появиться страница с созданным багом (рис. 8, 9, 10).


Рисунок 8 – Страница с созданным багом

 

 

 

Рисунок 9 – Страница с созданным багом (продолжение) Внизу страницы находятся комментарии по багу (рис. 10).


 

Рисунок 10 – Страница с созданным багом (продолжение)

Для быстрого заведения новых багов (схожих с имеющимися) — напри- мер, если необходимо провести декомпозицию, то есть выделить некоторую подзадачу из крупной задачи, можно применять «клонирование», вызываемое ссылкой «Clone This Bug» (рис. 11).

Рисунок 11 – Клонирование бага

Клонирование бага приводит к заведению бага, унаследовавшего все ат- рибуты от исходного бага. «Клонирование в тот же продукт» выделено отдель- ной ссылкой, так как это ускоряет наиболее распространенный сценарий кло- нирования, исключая одну или две страницы выбора продукта.

Все действия над заведенным запросом отражаются в письмах в Вашем почтовом ящике. В письме кроме самого комментария будет указана ссылка для быстрого перехода к данному запросу в багзиллу (рис. 12).


Рисунок 12 – Уведомление о добавлении комментария

 

3. Поиск «багов»

На странице «Bugzilla Search» представлен интерфейс к поиску любых зарегистрированных багов, комментариев и патчей. Интерфейс позволяет за- дать поисковые значения для всех перечисленных полей бага, причем для неко- торых полей может быть задано несколько значений из домена (с помощью списков с множественным выбором). Если значение не выбрано — атрибут бага может принимать любое значение.

Поиск может быть простым (рис. 13) и развернутым (рис. 15, 16).

 

Рисунок 13 – Простой поиск

Попробуем найти свой баг с помощью простого поиска, введя в поле для быстрого поиска «test12345». Результаты запроса представлены на рисунке 14.


Рисунок 14 – Результаты поиска бага «test12345»

 

Рисунок 15 – Развёрнутый поиск

Можно накладывать временные условия на изменение бага (рис. 17), за- прашивая только баги, по которым было какое-нибудь движение (изменение атрибутов, комментарии) в определенном интервале времени — см. группу по- лей «Bug Changes».

Интервал времени можно задавать как в абсолютной форме (yyyy-mm- dd), так и в форме, относительной текущей даты, таким образом можно сделать хранимый запрос, показывающий только баги, измененные в течении предше- ствующих 24 часов (или недели, или месяца).

Рисунок 16 – Развёрнутый поиск (продолжение)


Конкретно, можно использовать слова:

Now — «сейчас», разумно использовать для задания верхней границы интервала.

1d — день назад (2d — два дня назад …). 0d — последняя полночь, до текущего момента.

1w — то же самое в неделях. 0w — начало недели. 1m — то же в месяцах. 0m — начало месяца.

1y — то же в годах. 0y — начало года.

Можно добавить перед относительными датами знак «+», это будет означать, что относительная дата не вычитается из «Now», а прибавляется (в будущее). Кроме того, возможно осуществлять поиск по людям (рис. 17).

После выбора списка, его можно отсортировать щелчками по заголовкам колонок (что приводить к сортировке списка в порядке возрастания / убывания выбранного атрибута-колонки).

 

 

Рисунок 17 – Поиск по людям и временным условиям

Кроме того, можно просмотреть список собственных багов. Для этого нужно нажать на вкладку «My Bugs» (рис. 18).


Рисунок 18 – Просмотр списка собственных багов

Bugzilla обладает ещё некоторыми полезными возможностями (рис. 18):

· Edit Search (Можно вернуться на страницу запроса для дополнитель- ного уточнения запроса);

· Time Summary (перенаправляет на страницу просмотра отчётов по трудозатратам по выбранным багам);

· Change Columns (изменить список атрибутов, показываемых в спис-

ке).

 

 

4. Хранение запросов

Любой выполненный запрос можно сохранить под неким выбранным именем («Remember Search As»), тогда результат этого запроса можно будет всегда получить за один «клик», активировав одноименную с запросом ссылку, которая будет показываться внизу страницы, в линейке «Saved Searches» (рис. 19).

Рисунок 19 – Сохранение поискового запроса

Результаты поискового запроса можно представить в различной форме:


CSV (выдает список в CSV формате (разделенным запятыми), например, для импорта в программу электронных таблиц (рис. 20));

Рисунок 20 – Список багов в формате CSV

 

XML (даёт возможность выгрузить баги в XML-файл (рис. 21), для по- следующего импорта в другую Bugzilla или какой-то специальной обработки);

Рисунок 21 – Список багов в формате XML

Long format (показывает несколько багов на одной странице в подроб- ном формате со всеми атрибутами и полными обсуждениями (рис. 22)).

Рисунок 22 – Список багов в Long format


5. Отчеты и графики

В дополнение к стандартному списку багов, багзилла имеет некоторые аналитические возможности — просмотр количества зарегистрированных багов в виде таблиц и графиков, с возможностью задания среза (перспективы) агрега- ции, а также графики, показывающие динамическое изменение состояния багов по времени.

Отчет представляет собой некий информационный срез о текущем со- стоянии базы зарегистрированных багов (рис. 23). Он строится на основе поис- кового запроса.

Рисунок 23 – Задание параметров отчёта

Можно сделать отчет как обычным, HTML-табличным (рис. 24), так и графическим, с различными видами графиков: линейными (рис. 25), круговыми (рис. 26), гистограммы (рис. 27) (line/pie/bar), и переключаться между этими режимами просмотра онлайн.

Рисунок 24 – Табличный отчёт


Рисунок 25 – Графический отчёт в виде линейной диаграммы

 

Рисунок 26 – Графический отчёт в виде круговой диаграммы


Рисунок 27 – Графический отчёт в виде гистограммы

 

6. Настройки пользователя

Настройки пользователя можно изменять с помощью вкладки Prefer- ences» (рис. 28).

Рисунок 28 – Изменение настроек пользователя Настройки пользователя подразделяются на:

Account Information

На этой закладке, вы можете менять основную информацию вашей лич- ной записи — пароль, e-mail, настоящее имя. По соображениям безопасности, при изменении любых параметров на этой странице, вы должны подтвердить изменение вводом своего пароля. Если вы меняете свой email, то по обоим (ста- рому и новому) адресам будет выслано письмо со ссылкой на подтверждение изменения.

General Preferences

Содержит простые настройки интерфейса. Email Preferences


Эти настройки определяют, когда и сколько писем будет вам слать Bugzilla. Если вы хотите получать максимальное объем писем — нажмите на кнопку «Enable All Mail». Если не хотите получать почту от Bugzilla – нажмите

«Disable All Mail» (рис. 29).

 

Рисунок 29 – Настройки email-рассылки Saved Searches

Данная вкладка содержит все настройки, связанные с поиском. Permissions

Это чисто информационная страница-закладка, описывающая все права пользователя в текущей инсталляции — какие группы продуктов доступны, может ли пользователь редактировать баги и осуществлять административные функции.


Порядок выполнения работы

1. Создать новую учётную запись;

2. Создать произвольный баг;

3. Выполнить поиск багов по определённым критериям и представить результаты в соответствии со своим вариантом;

4. Создать отчёт по багам на основе поискового запроса;

5. Выполнить настройки в соответствии со своим вариантом;

6. Ответить на контрольные вопросы;

7. Написать отчёт, защитить у преподавателя.

 

Вари- ант Поиск Отчёт Настройки
  1 Поиск багов за последний месяц с приоритетом P2 Список в csv формате Табличный   Горизонтальная ось - OS Запретить отсылку электронных писем
  2 Поиск багов с summary bug с критичностью проблемы normal Список в Long Format Графический (Bar)   Горизонтальная ось - Complete Сменить пароль и email
  3 Поиск багов по продукту Food- Replicator, ОС Windows XP Список в формате xml-файла Графический (Line)   Горизонтальная ось - Status Автоматически вклю- чать себя в CC list
  4 Поиск багов со статусом con- firmed, компонентом Salt Список в csv формате Графический (pie)   Горизонтальная ось - Priority Убрать комментарии при выполнении быстрого поиска
  5 Баги с названием, схожими с ва- шим, приоритетом 3 Список в Long Format Табличный   Горизонтальная ось - Severity Показывать коммен- тарии от старых к но- вым
  6 Баги со статусом in progress, продукт - MyOwnBadSelf Список в формате xml-файла Графический (Bar)   Горизонтальная ось - Hardware Предпочтительный формат электронной почты - текстовый
7 Баги с компонентом Venom, кри- тичностью normal Графический (Line)   Горизонтальная ось Отсылка письма на email при добавлении

  Список в csv формате - Hardware комментария
  8 Баги с критичностью blocker, Hardware - Macintosh Список в Long Format Графический (pie)   Горизонтальная ось – Actual hours Отсылка письма на email при изменении вложения
    9 Баги ОС Windows 2000, contains Reporter – ваш логин Список в формате xml-файла Табличный   Горизонтальная ось – Number of Com- ments Отсылка письма на email при изменении приоритета
  10 Баги за последние 2 месяца, Res- olution - invalid Список в Long Format Графический (Bar)   Горизонтальная ось - Reporter Отсылка письма на email при изменении CC list

 

 

Контрольные вопросы

1. Для чего используется приложение Bugzilla?

2. Что такое баг?

3. Какие атрибуты у бага?

4. Как создать запрос?

5. Какие виды поиска существуют?

6. В каком виде могут быть представлены результаты поиска багов?

7. Можно ли сохранять поисковые запросы? Если да, то каким образом?

8. Как составить отчёт?

9. Какие формы отчётов существуют в Bugzille?

10. Как настроить получение максимального объёма писем?


Лабораторная работа №8


Дата добавления: 2019-09-13; просмотров: 270; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!