Зарегистрируйтесь, чтобы продолжить обучение

Дефект Рабочий процесс тестировщика

Дефект – это ситуация, в которой фактическое поведение программы не соответствует ожидаемому результату.

Программа содержит дефект, если:

  • Она не выполняет функцию, которую должна выполнять по требованиям
  • Она выполняет функцию, которую не должна выполнять по требованиям

То же самое справедливо не только для всей программы, но и для отдельных ее свойств — безопасность, отказоустойчивость, удобство использования и так далее.

Возьмем для примера календарь и посмотрим, какие бывают дефекты:

  • Функциональные дефекты — в календаре не выбирается дата
  • Визуальные дефекты — элемент календаря уехал за экран
  • Логические дефекты — в феврале 31 день
  • Ошибка контента — название месяца записано как «декабьр»
  • Ошибка удобства использования — даты выводятся не по неделям
  • Прочие нефункциональные дефекты — есть проблемы с безопасностью или отказоустойчивостью

Уровень дефектов

Рассмотрим уровни дефектов от больших к меньшим:

  • Блокирующий (Blocker) – дефект полностью блокирует выполнение функционала, нет никакого способа его обойти. Пример: Не работает авторизация на сайте (что в свою очередь блокирует большую часть функционала).

  • Критический (Critical) – дефект блокирует часть функциональности, но есть альтернативный путь для его обхода. Пример: В банковском приложении при попытке перевода денег на счет через основной интерфейс возникает ошибка. Однако, пользователь может завершить операцию, зайдя в другой раздел приложения или используя веб-версию сервиса.

  • Значительный (Major) – дефект, указывающий на некорректную работу части функциональности. Другими словами, функция работает, но неправильно. При этом существует более одной точки входа для инициации нужной функциональности. Пример: В текстовом редакторе функция автоформатирования кода добавляет неправильные отступы и форматирование, из-за чего код не проходит проверку на стиль. Но редактор все еще позволяет пользователю писать код и сохранять его.

  • Незначительный (Minor) – дефект, не относящийся к функциональности системы. Обычно уровень Minor проставляется для тех дефектов, которые относятся к удобству использования или интерфейсу. Пример: В мобильном приложении кнопка "Назад" на некоторых экранах не отображается в привычном месте, из-за чего пользователю нужно использовать жесты или другие элементы интерфейса. Это не влияет на функциональность, но ухудшает удобство использования.

  • Тривиальный (Trivial) – дефект, не затрагивающий функциональность системы и почти не влияющий на общее качество системы. Часто неотличим от уровня Minor. Пример: В мобильном приложении у кнопки "Отправить" на экране чата слегка отличается оттенок от стандартного, иконка кнопки немного смещена. Это не влияет на работу приложения, и ошибка практически не заметна для большинства пользователей.


Самостоятельная работа

Мы подготовили для вас небольшое приложение — это простая программа, которая проверяет другой сайт на доступность. Приложение содержит ошибку, которая происходит, если выполнить проверку.

Воспроизведите баг, опишите дефект и тест-кейс.

Опционально опишите дефект и тест-кейс на сервисе qase.io.

Для полного доступа к курсу нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
1000
упражнений
2000+
часов теории
3200
тестов

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff