Файл: Обеспечения Базовый курс (3е издание) Версия книги 2 от 17. 04. 2023.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 07.11.2023
Просмотров: 865
Скачиваний: 31
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
314
Incident, Deviation. Any event occurring that requires investigation. [ISTQB Glossary]
315
Actual result. The behavior produced/observed when a component or system is tested. [ISTQB Glossary]
316
Expected result, Expected outcome, Predicted outcome. The behavior predicted by the specification, or another source, of the component or system under specified conditions. [ISTQB Glossary]
Отчёт о дефекте и его жизненный цикл
Тестирование программного обеспечения. Базовый курс.
© EPAM Systems, 2015–2023
Стр: 170/301
2.5.2.
Отчёт о дефекте и его жизненный цикл
Как было сказано в предыдущей главе, при обнаружении дефекта тестиров- щик создаёт отчёт о дефекте.
Отчёт о дефекте (defect report
317
)
— документ, описывающий и приорити- зирующий обнаруженный дефект, а также содействующий его устране- нию.
Как следует из самого определения, отчёт о дефекте пишется со следую- щими основными целями:
• предоставить информацию о проблеме — уведомить проектную команду и иных заинтересованных лиц о наличии проблемы, описать суть проблемы;
• приоритизировать проблему — определить степень опасности проблемы для проекта и желаемые сроки её устранения;
• содействовать устранению проблемы — качественный отчёт о дефекте не только предоставляет все необходимые подробности для понимания сути случившегося, но также может содержать анализ причин возникновения про- блемы и рекомендации по исправлению ситуации.
На последней цели следует остановиться подробнее. Есть мнение, что «хо- рошо написанный отчёт о дефекте — половина решения проблемы для програм- миста». И действительно, как мы увидим далее (и особенно в главе «Типичные ошибки при написании отчётов о дефектах»
{202}
), от полноты, корректности, аккурат- ности, подробности и логичности отчёта о дефекте зависит очень многое — одна и та же проблема может быть описана так, что программисту останется буквально исправить пару строк кода, а может быть описана и так, что сам автор отчёта на следующий день не сможет понять, что же он имел в виду.
ВАЖНО! «Сверхцель» написания отчёта о дефекте состоит в быстром ис- правлении ошибки (а в идеале — и недопущении её возникновения в бу- дущем). Потому качеству отчётов о дефекте следует уделять особое, по- вышенное внимание.
Отчёт о дефекте (и сам дефект вместе с ним) проходит определённые стадии жизненного цикла, которые схематично можно показать так (рисунок 2.5.c):
• Обнаружен (submitted) — начальное состояние отчёта (иногда называется
«Новый» (new)), в котором он находится сразу после создания. Некоторые средства также позволяют сначала создавать черновик (draft) и лишь потом публиковать отчёт.
• Назначен (assigned) — в это состояние отчёт переходит с момента, когда кто- то из проектной команды назначается ответственным за исправление де- фекта. Назначение ответственного производится или решением лидера ко- манды разработки, или коллегиально, или по добровольному принципу, или иным принятым в команде способом или выполняется автоматически на ос- нове определённых правил.
• Исправлен (fixed) — в это состояние отчёт переводит ответственный за ис- правление дефекта член команды после выполнения соответствующих дей- ствий по исправлению.
• Проверен (verified) — в это состояние отчёт переводит тестировщик, удосто- верившийся, что дефект на самом деле был устранён. Как правило, такую проверку выполняет тестировщик, изначально написавший отчёт о дефекте.
317
Defect report, Bug report. A document reporting on any flaw in a component or system that can cause the component or system to fail to perform its required function. [ISTQB Glossary]
Отчёт о дефекте и его жизненный цикл
Тестирование программного обеспечения. Базовый курс.
© EPAM Systems, 2015–2023
Стр: 171/301
По поводу того, должен ли проверять факт устранения дефекта именно тот тестировщик, который его обнаружил, или обязательно другой, есть много «священных войн». Сторонники второго вари- анта утверждают, что свежий взгляд человека, ранее не знакомого с данным дефектом, позволяет ему в процессе верификации с большой вероятностью обнаружить новые дефекты.
Несмотря на то, что такая точка зрения имеет право на существо- вание, всё же отметим: при грамотной организации процесса тести- рования поиск дефектов эффективно происходит на соответствую- щей стадии работы, а верификация силами тестировщика, обнару- жившего данный дефект, всё же позволяет существенно сэконо- мить время.
Рисунок 2.5.c — Жизненный цикл отчёта о дефекте с наиболее типичными перехо- дами между состояниями
Набор стадий жизненного цикла, их наименование и принцип перехода от стадии к стадии может различаться в разных инструментальных сред- ствах управления жизненным циклом отчётов о дефектах. Более того — многие такие средства позволяют гибко настраивать эти параметры. На рисунке 2.5.c показан лишь общий принцип.
• Закрыт (closed) — состояние отчёта, означающее, что по данному дефекту не планируется никаких дальнейших действий (хотя, конечно, ничто не ме- шает в будущем этому дефекту стать «открытым заново» (reopened)). Здесь есть некоторые расхождения в жизненном цикле, принятом в разных инстру- ментальных средствах управления отчётами о дефектах: o
В некоторых средствах существуют оба состояния — «Проверен» и
«Закрыт», чтобы подчеркнуть, что в состоянии «Проверен» ещё могут потребоваться какие-то дополнительные действия (обсуждения, до- полнительные проверки в новых билдах и т.д.), в то время как состоя- ние «Закрыт» означает «с дефектом покончено, больше к этому во- просу не возвращаемся». o
В некоторых средствах одного из состояний нет (оно поглощается дру- гим).
Обнаружен
Назначен
Исправлен
Проверен
Отложен
Закрыт
Открыт заново
Отклонён
Рекомендован к отклонению
Отчёт о дефекте и его жизненный цикл
Тестирование программного обеспечения. Базовый курс.
© EPAM Systems, 2015–2023
Стр: 172/301 o
В некоторых средствах в состояние «Закрыт» или «Отклонён» отчёт о дефекте может быть переведён из множества предшествующих состо- яний с резолюциями наподобие:
▪
«Не является дефектом» — приложение так и должно работать, описанное поведение не является аномальным.
▪
«Дубликат» — данный дефект уже описан в другом отчёте.
▪
«Не удалось воспроизвести» — разработчикам не удалось вос- произвести проблему на своём оборудовании.
▪
«Не будет исправлено» — дефект есть, но по каким-то серьёз- ным причинам его решено не исправлять.
▪
«Невозможно исправить» — непреодолимая причина дефекта находится вне области полномочий команды разработчиков, например существует проблема в операционной системе или аппаратном обеспечении, влияние которой устранить разум- ными способами невозможно.
Как было только что подчёркнуто, в некоторых средствах отчёт о де- фекте в подобных случаях будет переведён в состояние «Закрыт», в некоторых — в состояние «Отклонён», в некоторых — часть случаев закреплена за состоянием «Закрыт», часть — за «Отклонён».
• Открыт заново (reopened) — в это состояние (как правило, из состояния «Ис- правлен») отчёт переводит тестировщик, удостоверившийся, что дефект по- прежнему воспроизводится на билде, в котором он уже должен быть исправ- лен.
• Рекомендован к отклонению (to be declined) — в это состояние отчёт о де- фекте может быть переведён из множества других состояний с целью выне- сти на рассмотрение вопрос об отклонении отчёта по той или иной причине.
Если рекомендация является обоснованной, отчёт переводится в состояние
«Отклонён» (см. следующий пункт).
• Отклонён (declined) — в это состояние отчёт переводится в случаях, по- дробно описанных в пункте «Закрыт», если средство управления отчётами о дефектах предполагает использование этого состояния вместо состояния
«Закрыт» для тех или иных резолюций по отчёту.
• Отложен (deferred) — в это состояние отчёт переводится в случае, если ис- правление дефекта в ближайшее время является нерациональным или не представляется возможным, однако есть основания полагать, что в обозри- мом будущем ситуация исправится (выйдет новая версия библиотеки, вер- нётся из отпуска специалист по некоей технологии, изменятся требования заказчика и т.д.).
Для полноты рассмотрения данной подтемы приведём пример жизненного цикла, принятого по умолчанию в инструментальном средстве управления отчё- тами о дефектах JIRA
318
(
рисунок 2.5.d).
318
«What is Workflow». [
https://confluence.atlassian.com/jira063/what-is-workflow-683542483.html
]
Отчёт о дефекте и его жизненный цикл
Тестирование программного обеспечения. Базовый курс.
© EPAM Systems, 2015–2023
Стр: 173/301
Рисунок 2.5.d — Жизненный цикл отчёта о дефекте в JIRA
Открыт
В работе
Закрыт
Открыт заново
Исправлен
Создание
Исправление
Закрытие
Остановка работы
Начало работы
Повторное открытие
Исправление
Закрытие
Закрытие
Закрытие
Начало работы
Повторное открытие
Атрибуты (поля) отчёта о дефекте
Тестирование программного обеспечения. Базовый курс.
© EPAM Systems, 2015–2023
Стр: 174/301
2.5.3.
Атрибуты (поля) отчёта о дефекте
В зависимости от инструментального средства управления отчётами о де- фектах внешний вид их записи может немного отличаться, могут быть добавлены или убраны отдельные поля, но концепция остаётся неизменной.
Общий вид всей структуры отчёта о дефекте представлен на рисунке 2.5.e.
19
Бесконечный цикл об- работки входного файла с атрибутом
«только для чтения»
Если у входного файла выставлен атрибут «только для чтения», по- сле обработки приложению не уда-
ётся переместить его в каталог- приёмник: создаётся копия файла, но оригинал не удаляется, и при- ложение снова и снова обрабаты- вает этот файл и безуспешно пы- тается переместить его в каталог- приёмник.
Ожидаемый результат: после об- работки файл перемещён из ката- лога-источника в каталог-приём- ник.
Фактический результат: обрабо- танный файл копируется в ката- лог-приёмник, но его оригинал остаётся в каталоге-источнике.
Требование:
ДС-2.1 1.
Поместить в каталог-ис- точник файл допусти- мого типа и размера.
2.
Установить данному файлу атрибут «только для чтения».
3.
Запустить приложение.
Дефект: обработанный файл появляется в ка- талоге-приёмнике, но не удаляется из ката- лога-источника, файл в каталоге-приёмнике непрерывно обновля- ется (видно по значе- нию времени послед- него изменения).
Всегда
Средняя
Обычная
Некорректная операция
Нет Если заказчик не планирует использовать установку ат- рибута «только для чтения» файлам в каталоге-источ- нике для достижения неких своих целей, можно просто снимать этот атрибут и спо- койно перемещать файл.
-
Рисунок 2.5.e — Общий вид отчёта о дефекте
Задание 2.5.a: как вы думаете, почему этот отчёт о дефекте можно по формальным признакам отклонить с резолюцией «не является дефек- том»?
Теперь рассмотрим каждый атрибут подробно.
Идентификатор
Краткое описание
Подробное описание
Шаги по воспроизведению
Воспроизводимость
Важность
Срочность
Симптом
Возможность обойти
Комментарий
Приложения
Атрибуты (поля) отчёта о дефекте
Тестирование программного обеспечения. Базовый курс.
© EPAM Systems, 2015–2023
Стр: 175/301
Идентификатор (identifier) представляет собой уникальное значение, позво- ляющее однозначно отличить один отчёт о дефекте от другого и используемое во всевозможных ссылках. В общем случае идентификатор отчёта о дефекте может представлять собой просто уникальный номер, но (если позволяет инструменталь- ное средство управления отчётами) может быть и куда сложнее: включать пре- фиксы, суффиксы и иные осмысленные компоненты, позволяющие быстро опреде- лить суть дефекта и часть приложения (или требований), к которой он относится.
Краткое описание (summary) должно в предельно лаконичной форме давать исчерпывающий ответ на вопросы «Что произошло?» «Где это произошло»? «При каких условиях это произошло?». Например: «Отсутствует логотип на странице приветствия, если пользователь является администратором»:
• Что произошло? Отсутствует логотип.
• Где это произошло? На странице приветствия.
• При каких условиях это произошло? Если пользователь является админи- стратором.
Одной из самых больших проблем для начинающих тестировщиков является именно заполнение поля «краткое описание», которое одновременно должно:
• содержать предельно краткую, но в то же время достаточную для понимания сути проблемы информацию о дефекте;
• отвечать на только что упомянутые вопросы («что, где и при каких условиях случилось») или как минимум на те 1–2 вопроса, которые применимы к кон- кретной ситуации;
• быть достаточно коротким, чтобы полностью помещаться на экране (в тех системах управления отчётами о дефектах, где конец этого поля обрезается или приводит к появлению скроллинга);
• при необходимости содержать информацию об окружении, под которым был обнаружен дефект;
• по возможности не дублировать краткие описания других дефектов (и даже не быть похожими на них), чтобы дефекты было сложно перепутать или по- считать дубликатами друг друга;
• быть законченным предложением русского или английского (или иного) языка, построенным по соответствующим правилам грамматики.
Для создания хороших кратких описаний дефектов рекомендуется пользо- ваться следующим алгоритмом:
1.
Полноценно понять суть проблемы. До тех пор, пока у тестировщика нет чёт- кого, кристально чистого понимания того, «что сломалось», писать отчёт о дефекте вообще едва ли стоит.
2.
Сформулировать подробное описание (description) дефекта — сначала без оглядки на длину получившегося текста.
3.
Убрать из получившегося подробного описания всё лишнее, уточнить важ- ные детали.
4.
Выделить в подробном описании слова (словосочетания, фрагменты фраз), отвечающие на вопросы, «что, где и при каких условиях случилось».
5.
Оформить получившееся в пункте 4 в виде законченного грамматически пра- вильного предложения.
6.
Если предложение получилось слишком длинным, переформулировать его, сократив длину (за счёт подбора синонимов, использования общепринятых аббревиатур и сокращений). К слову, в английском языке предложение почти всегда будет короче русского аналога.
Атрибуты (поля) отчёта о дефекте
Тестирование программного обеспечения. Базовый курс.
© EPAM Systems, 2015–2023
Стр: 176/301
Рассмотрим несколько примеров применения этого алгоритма.
Ситуация 1. Тестированию подвергается некое веб-приложение, поле опи- сания товара должно допускать ввод максимум 250 символов; в процессе тестиро- вания оказалось, что этого ограничения нет.
1.
Суть проблемы: исследование показало, что ни на клиентской, ни на сервер- ной части нет никаких механизмов, проверяющих и/или ограничивающих длину введённых в поле «О товаре» данных.
2.
Исходный вариант подробного описания: в клиентской и серверной части приложения отсутствуют проверка и ограничение длины данных, вводимых в поле «О товаре» на странице http://testapplication/admin/goods/edit/.
3.
Конечный вариант подробного описания:
• Фактический результат: в описании товара (поле «О товаре», http://testapplication/admin/goods/edit/
) отсутствуют проверка и ограни- чение длины вводимого текста (MAX=250 символов).
• Ожидаемый результат: в случае попытки ввода 251+ символов выво- дится сообщение об ошибке.
4.
Определение «что, где и при каких условиях случилось»:
• Что: отсутствуют проверка и ограничение длины вводимого текста.
• Где: описание товара, поле «О товаре», http://testapplication/ad- min/goods/edit/.
• При каких условиях: – (в данном случае дефект присутствует всегда, вне зависимости от каких бы то ни было особых условий).
5.
Первичная формулировка: отсутствуют проверка и ограничение максималь- ной длины текста, вводимого в поле «О товаре» описания товара.
6.
Сокращение (итоговое краткое описание): нет ограничения максимальной длины поля «О товаре». Английский вариант: no check for «О товаре» max length.
1 ... 21 22 23 24 25 26 27 28 ... 38