Какие виды дубликатов баг-репортов существуют?

Ответ

Дубликаты баг-репортов делятся на три основных типа:

  1. Полный (Истинный) дубликат

    • Описание: Баг полностью идентичен уже заведённому. Совпадают шаги воспроизведения, окружение, компонент системы и наблюдаемое поведение.
    • Пример: Два разных тестировщика независимо нашли и завели один и тот же баг с кнопкой "Отправить" на странице /contact в браузере Chrome 120.
  2. Частичный дубликат

    • Описание: Баг описывает одну и ту же основную проблему, но с некоторыми различиями (например, проявляется в другом браузере, на другой ОС, при других входных данных).
    • Пример:
      • Баг #101: "Кнопка 'Submit' не работает в Chrome".
      • Баг #105: "Кнопка 'Submit' не работает в Firefox".
      • Решение: Часто такие баги объединяют в один (родительский), указывая в нём все затронутые окружения.
  3. Ложный дубликат

    • Описание: Внешние симптомы похожи, но коренная причина (root cause) дефектов разная. Объединение таких багов приведёт к потере информации и усложнит исправление.
    • Пример: Страница не грузится. Один баг вызван ошибкой в коде фронтенда, а второй — падением бэкенд-сервиса. Это разные проблемы.

Как избежать создания дубликатов:

  1. Всегда искать по ключевым словам в трекере багов перед созданием нового отчёта.
  2. Внимательно изучать шаги воспроизведения и окружение похожих открытых багов.
  3. Чётко и детально описывать контекст и условия возникновения ошибки в новом репорте.

Ответ 18+ 🔞

А, слушай, про дубликаты багов, это вообще отдельная песня, блядь! Сидишь такой, нашёл косяк, уже предвкушаешь, как сейчас всех удивишь, а в итоге — бац! — а этот пиздёныш уже три недели как в системе валяется. Обидно, сука.

Ну ладно, чтобы не выглядеть полным мудаком, надо понимать, какие они бывают, эти дубликаты-то. Их, внатуре, три главных типа.

Первый — полный, или истинный дубликат. Вот это просто пиздец, как обидно. Ты такой весь из себя красавчик, расписал десять шагов, скрины нарезал, а оказывается, какой-то Васян уже месяц назад на эту же хуйню наткнулся. Всё совпадает: и шаги, и где поломалось, и как именно ебёт систему. Просто два человека независимо друг от друга наступили на одни и те же грабли. Пример? Да запросто: один тестировщик на /contact в Хроме кнопку сломал, и второй — туда же. Два одинаковых репорта, как две капли спермы, блядь.

Второй — частичный дубликат. Тут уже интереснее, ёпта. Проблема-то по сути одна, корень зла тот же самый, но симптомы чуть-чуть разнятся. Например, один баг кричит, что в Chrome кнопка не кликается, а другой — что в Firefox она тоже сдохла. Похожи? Ебать конечно похожи! Чаще всего такие штуки склеивают в один общий, родительский баг, и там уже пишут: "ОЙ, ВСЁ, СУКА, НЕ РАБОТАЕТ". Перечисляют все окружения, где эта поебота всплыла.

Третий — ложный дубликат. А вот это, блядь, самый опасный зверь. С виду — одно и то же: страница не грузится и всё тут. А копнёшь — а там, сука, причины — хуй на постном масле! В одном случае фронтенд сломался, в другом — бэкенд-сервис лёг и не встаёт. Если их тупо слить в один баг, получится такая каша, что потом разработчики тебе мозг вынесут. Информация потеряется, фикс усложнится — пиздец, короче.

Ну и как не сесть в лужу, создавая дубликат?

  1. Искать, блядь, искать! Прежде чем новый репорт создавать, проеби мозги и вбей в поиск трекера ключевые слова. "Кнопка", "не работает", "контакт" — хуярь всё, что в голову приходит.
  2. Внимательно читать, что уже нашли. Не просто заголовок глянуть, а шаги воспроизведения проштудировать и окружение проверить. Может, уже всё описано.
  3. Самому чётко и подробно писать. Не "чё-то не работает", а "на такой-то странице, при таких-то действиях, в таком-то браузере происходит вот такая конкретная хуйня". Контекст — это всё, ёпта!

Вот так-то, а то потом сидишь и думаешь: "Я был мудак, блядь... неправильно завёл, а хуй проверишь!"