Какие типы дефектов (багов) вы отслеживали в своей практике?

Ответ

В работе приходилось выявлять и отслеживать дефекты различных категорий, классифицируя их по области проявления и воздействию:

1. Функциональные дефекты:

  • Логика: Ошибки в бизнес-правилах (например, неверный расчет скидки).
  • Валидация: Некорректная проверка входных данных (система принимает пустой обязательный пароль).
  • Интеграция: Сбои в обмене данными между модулями или микросервисами.

2. Дефекты пользовательского интерфейса (UI) и удобства использования (UX):

  • Визуальные: Несоответствие макетам (отступы, шрифты, цвета).
  • Интерактивность: Не работают клики, некорректное поведение элементов.
  • Адаптивность: Проблемы с отображением на разных разрешениях или мобильных устройствах.

3. Дефекты API:

  • Спецификация: Отсутствие обязательных полей в ответе, неверные HTTP-статус коды (например, 200 OK вместо 400 Bad Request при ошибке).
  • Документация: Расхождение между фактическим поведением API и его Swagger-документацией.

4. Дефекты производительности и надежности:

  • Скорость: Время отклика API превышает SLA (например, >2 секунд).
  • Утечки: Утечка памяти при длительной работе.
  • Стабильность: Падение сервиса под нагрузкой.

5. Дефекты безопасности:

  • Уязвимости: Возможность SQL-инъекции, XSS (Cross-Site Scripting), недостаточная проверка авторизации.

Пример баг-репорта для функционального дефекта:

Title: [Checkout] - Total price is calculated incorrectly when applying a promo code.
Steps:
1. Add items worth $100 to the cart.
2. Apply promo code 'SAVE10' (should give 10% discount).
3. Proceed to checkout.
Expected: Total price = $90.
Actual: Total price = $99.
Environment: Chrome 120, Staging.
Severity: Major (blocks correct payment).

Отслеживание таких дефектов позволяет системно улучшать качество продукта по всем направлениям.

Ответ 18+ 🔞

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

1. Функциональные дефекты — это когда всё ебётся в самой сути.

  • Логика: Вот, например, обещали скидку 10%, а нахуярили всего один процент. И ты сидишь, такой: «Ну ёпта, арифметику кто-то проёбывал в школе?».
  • Валидация: Это вообще шедевр. Поле «пароль» обязательное, а ты туда хуй с горы вбиваешь — и система радостно пропускает. Вообще доверия ебать ноль.
  • Интеграция: Представь: один сервис кричит другому, а тот, пидарас шерстяной, делает вид, что не слышит. И данные летят в тартарары. Красота.

2. Дефекты UI/UX — для глаз и рук пиздец.

  • Визуальные: Дизайнер нарисовал красоту, а фронтендер выкатил такое, что глаза кровоточат. Шрифты пляшут, кнопки съехали — в общем, ёперный театр.
  • Интерактивность: Тыкаешь в кнопку, а она, сука, не тыкается. Или выпадашка выпадает не туда. Раздражение зашкаливает, блядь.
  • Адаптивность: На компе вроде норм, открываешь на телефоне — а там всё в одну колонку съехало и текст читать можно только через лупу. Просто манда с ушами.

3. Дефекты API — там, где машины между собой общаются.

  • Спецификация: Запрос отправил с ошибкой, а тебе в ответ — 200 OK и улыбка. Типа «всё хорошо, чувак». Да иди ты нахуй! Должен же быть 400 Bad Request!
  • Документация: В Swagger'е одно написали, а по факту API плюёт на эту документацию и живёт своей жизнью. Подозрение ебать чувствую к таким разработчикам.

4. Дефекты производительности и надежности — медленные и хрупкие.

  • Скорость: Ты ждёшь ответа от API, а он думает. Думает так долго, что можно сходить чайку попить, вернуться — а он всё ещё думает. SLA, говоришь? Да о каком SLA речь, если ответа ждать дольше, чем очередь в поликлинике?
  • Утечки: Поработал сервис пару часов, а память у него уже вся съебалась. Удивление пиздец.
  • Стабильность: Нагрузку дали чуть больше обычного — и сервис, как перепуганная мартышлюшка, накрылся медным тазом. Вообще пидары налетели.

5. Дефекты безопасности — самые страшные, тут уже волнение ебать.

  • Уязвимости: Это когда в поле для логина можно вписать какой-нибудь зловредный SQL-код, и база данных тебе откроется, как шлюха. Или скрипты левые встраиваются. Короче, пиздец и разгон на полную.

Вот, смотри, как это всё в баг-репорте выглядит, на живом примере:

Title: [Checkout] - Итоговая цена хуёво считается при применении промокода.
Steps:
1. Добавь в корзину товаров на $100.
2. Примени промокод 'SAVE10' (должен дать 10% скидку).
3. Перейди к оформлению.
Expected: Итоговая цена = $90.
Actual: Итогавая цена = $99. (Кто тут, блядь, математик?)
Environment: Chrome 120, Staging.
Severity: Major (ибо деньги клиента ебёт неправильно).

Вот когда всё это говно ловишь, классифицируешь и заставляешь чинить — вот тогда продукт и начинает становиться хоть немного менее кривым. А так — одни костыли да заплатки, ебать мои старые костыли.