Определение — Что означает Критическая Ошибка?
Критическая ошибка — это серьезная компьютерная ошибка, которая вынуждает программу остановиться, и для работающей программы, операционной системы или программного обеспечения становится невозможным нормальная работа программы. Эта ошибка может привести к перезагрузке или зависанию компьютера.
Техопедия объясняет критическую ошибку
Критическая ошибка — это ошибка, которая приводит к прерыванию работы программы. Критическая ошибка может возникнуть в операционной системе, работающем приложении, программе или программном обеспечении. В этом процессе выполняемая операция прерывается, и данные могут быть потеряны. Это может даже привести к зависанию или самопроизвольной перезагрузке компьютера.
Критическая ошибка может быть вызвана такими причинами, как:
- Попытка незаконной инструкции
- Программа пытается выполнить то, что невозможно
- Доступ к неверному коду
Одна из наиболее известных критических ошибок в вычислениях — это печально известный Blue Screen of Death (BSoD) в операционных системах Microsoft Windows.
I want to clarify my definition of a critical and a major bug in software testing
According to my understanding a critical bug is one which does not have a work around solution and a major bug is one which does. (Please correct me if i am wrong)
But HOW does a tester determine whether or not a bug will have a work around solution or not??
asked Feb 1, 2014 at 8:45
1
I use the terminology
blocker — the functionality does not work in main area (businness cannot be provided)
critical — the functionality does not work in main area but there is a work around
major — the functionality does not work but not in main area (business can be provided)
minor — there are user interface problems or functional but in area which is used rarely
trivial — misspellings
Testers do not decided about solutions but can say their opinion.
answered Dec 12, 2016 at 8:59
KingaKinga
2321 gold badge4 silver badges11 bronze badges
A critical defect is show stopper which means the functionality cannot be delivered unless that defect is cleared. And a major defect is a major flaw in functionality but it still can be released.
As a simple example, for an application maintaining list of people. If the user is not able to add/update details of a person in the list, it is a critical defect. But if the user is not able to delete the information of a person it is a major defect.
Hope this helps..
answered Feb 2, 2014 at 18:42
Meetu SinghMeetu Singh
2412 silver badges5 bronze badges
Testers don’t. They categorize bugs in terms of empirical user experience. A test engineer will write up a bug as critical if it makes the system undeliverable, eg ‘system consistently crashes after 255 transactions have been made, corrupting the tables’.
Typically, a project management review team will then decide on what impact the bug will have and what action is required, so setting a priority for action. A critical bug may require no action at all, eg «Yeah — I totally derped. It’s already fixed in the source and will be gone in the next build. It’s on now and will be done by the time the meeting is over».
answered Feb 1, 2014 at 9:04
Martin JamesMartin James
24.5k3 gold badges36 silver badges60 bronze badges
Критическая ошибка (Фатальная ошибка, Fatal error) — ошибка, из-за которой определённая система не может дальше работать и либо вынуждена остановиться (до исправления критической ошибки), либо терпит полный крах и восстановлена быть уже не может.
Некий даун умудрился сломать даже меню Пуск и Корзину
Подробности[править]
Больше всего известны и распространены критические ошибки в ПО, где они возникают из-за невнимательности или малой компетенции программиста. В зависимости от системы, может быть просто нарушена работа до исправления, а может быть и так, что ценные данные окажутся безвозвратно потеряны.
Так, критическая ошибка операционной системы обычно приводит к появлению экрана BSOD и экстренной перезагрузке, а если ошибка происходит в конкретной программе, то программа завершается. Частой причиной ошибки со стороны программ является обращение к некорректному адресу оперативной памяти, что может привести к большим проблемам, если не остановить исполнение программы.
В более широком значении фатальной ошибкой называют серьёзную оплошность, из-за которой некоторое предприятие может потерпеть полный крах. Скажем, если игрок в казино поставит все свои деньги на некоторый исход и их потеряет; иным характерным примером критической ошибки является поведение гомосеков во время решающего наступления на врага, как известно извращенцы начинают даже в такой ответственный момент долбиться, поскольку управляет ими не мозг, а срамной уд, что нередко становится причиной успешной контратаки врага, который делает им перелом члена и затем побеждает.
Начинающие тестировщики могут путать эти параметры, но у них есть существенные отличия. Давайте разберемся в этом подробней.
Для начала рассмотрим каждый атрибут в отдельности.
Серьезность
Серьезность (Severity) — это атрибут, характеризующий влияние дефекта на работоспособность приложения. Проставляется специалистом по тестированию.
Серьезность имеет несколько параметров в зависимости от типа дефекта. Ее степень зависит от того, как она влияет на бизнес-логику (реализацию правил программы).
- S1 – Блокирующая (Blocker). Блокирующая ошибка, приводящая приложение в нерабочее состояние, в результате которого дальнейшая работа с тестируемой системой или ее функциями становится невозможна.
- S2 – Критическая (Critical). Критическая ошибка, неправильно работающая бизнес-логика, проблема, приводящая в нерабочее состояние некоторую часть системы, но есть возможность для работы с тестируемой функцией, используя другие входные точки.
- S3 – Значительная (Major). Значительная ошибка, часть бизнес-логики работает некорректно. Ошибка не критична или есть возможность для работы с тестируемой функцией, используя другие входные точки.
- S4 – Незначительная (Minor). Незначительная ошибка, не нарушающая бизнес-логику тестируемой части приложения, очевидная проблема пользовательского интерфейса.
- S5 – Тривиальная (Trivial). Тривиальная ошибка, не касающаяся бизнес-логики приложения, плохо воспроизводимая проблема, малозаметная по средствам пользовательского интерфейса, проблема сторонних библиотек или сервисов, проблема, не оказывающая никакого влияния на общее качество продукта.
Из описания видно, что с помощью Серьезности мы указываем как найденная ошибка влияет на тестируемое приложение. Если из-за ошибки приложение полностью не работает, то Серьезность высокая. Если найденный дефект мало влияет на функционал и больше относится к визуальной части (например, опечатка в слове), то Серьезность низкая.
Давайте рассмотрим несколько примеров проблем и попробуем правильно определить их Серьезность. Чтобы было понятно, представим, что мы тестируем приложение по заказу такси.
1.Приложение «падает» при попытке найти свободное такси.
Чтобы правильно поставить Серьезность, необходимо определить влияние ошибки на дальнейшую работу функционала. Из названия видно, что после появления ошибки приложение перестает работать. Значит, влияние высокое.
Сразу же отбрасываем Тривиальную и Незначительную Серьезность, так как из их описания понятно, что ошибка не должна сильно влиять на приложение.
У нас остается только три варианта: Значительная, Критическая и Блокирующая серьезности.
Подходит ли нам Значительная Серьезность? Очевидно, что нет. Во-первых, ошибка достаточно критична. Во-вторых, другим способом найти такси мы не можем, т.е. нет возможности работы с тестируемой функцией, используя другие входные точки. Более того, функционал работает не некорректно, а не работает вообще.
Остаются Критическая и Блокирующая серьезности. В нашем случае Блокирующая подходит больше, так как часть функционала не работает и нет других возможностей найти такси. Следовательно, мы выставляем Блокирующую Серьезность.
2. Невозможно указать адрес назначения с помощью “Указать на карте”.
Снова начинаем рассуждать. Тривиальная и Незначительная не подходят, потому что ошибка в какой-то мере нарушают бизнес логику работы приложения. Блокирующую можно не брать, т.к. функционал в целом работает и его можно использовать через другую точку входа, а именно ввести адрес вручную. Остается только два варианта: Критическая и Значительная. Мы уже сказали, что проблема не приводит к полной неработоспособности части функционала. Тем не менее это значительная ошибка, т.к. функционал частично не работает, следовательно остается только вариант Значительная. Его мы и укажем.
Как вы могли понять, Серьезность относится к технической части приложения и указывает на то, как сильно ошибка влияет на работоспособность приложения.
Приоритет
Приоритет отличается от Серьезности тем, что указывает когда необходимо исправить ошибку.
Приоритет (Priority) – это атрибут, указывающий на очередность выполнения задачи или устранения дефекта. Проставляется руководителем или менеджером проекта.
- P1 – Высокий (High) – требуется исправить в первую очередь.
- P2 – Средний (Medium) – требуется исправить во вторую очередь, когда нет дефектов с высоким приоритетом.
- P3 – Низкий (Low) – исправляется в последнюю очередь, когда все дефекты с более высоким приоритетом уже исправлены.
С помощью приоритета менеджер проекта говорит, когда стоит исправить найденную проблему.
На первый взгляд можно подумать, что Приоритет и Серьезность одинаковы, ведь чем серьезней ошибка, тем быстрее её нужно исправить. Но, если глубже рассмотреть эти атрибуты, то можно найти различия.
Например, мы нашли опечатку в слове. Из названия видно, что это ошибка с Незначительной серьезностью и, вроде бы, ее не стоит исправлять в приоритете. Но если это слово находится на главном экране и является частью названия приложения, то, очевидно, что ее необходимо исправить как можно раньше.
Приоритет определяется исходя из масштабности проблем для пользователей и продукта. Для понимая можно использовать матрицу:
Теперь, когда мы разобрались что означает каждый атрибут, давайте посмотрим в чем их различие:
________________________________
Если остались вопросы по определению параметров Серьезность и Приоритет, то задавайте их в комментариях к статье.
________________________________
Предыдущие статьи по оформлению баг-репорта:
Назначение отчета https://sedtest-school.ru/testovaya-dokumentacziya/otchety-o-defektah-naznachenie/
Шаблон отчета об ошибке https://sedtest-school.ru/testovaya-dokumentacziya/otchety-o-defektah-shablon-otcheta-ob-oshibke/