QA и бизнес
Вспомнил одну историю, произошедшую на работе.
Планировалась отгрузка релиза буквально через неделю, примерно в это же время задача ушла на тестирование. Бэкенд был полностью реализован на PL/SQL в виде пакетов хранимых процедур.
Во время тестирования был следующий кейс: в таблице источнике у записи валюта USD. во время ETL процесса должно было взять эту валюту и в зависимости от нее конвертировать в рубли и протянуть данные в таблицу приемник(витрину) Окей, наиграл данные, запускаю ETL, отрабатывает, смотрю витрину - а в конкретном поле в витрине пусто! Еще раз запускаю, чтобы понять это воспроизводимый дефект или нет. Опять пустое поле. Перепроверил несколько раз данные на вход. Все ок, согласованы и корректные, по ним ошибки нет 100%
Лезу в процедуру. И тут вижу, что в процедуре есть JOIN (не LEFT, не RIGHT, а именно INNER) у которого в условии неправильное поле указано. То есть соединение просто не проходит и выборка возвращает пустой результат. Поправил у себя локально, перезапустил ETL - поле в витрине заполнилось корректно. Написал баг-репорт, объяснил разрабам что именно надо поправить, приложил данные на вход, данные на выходе, скрипт которым проверял полноту данных.
На момент передачи на UAT тестирование, коллега который его проводил сказал - сейчас еще проверим этот кейс (как раз с конвертацией) и будем отгружаться. На что я ему написал: там был дефект, исправлен, сейчас процедура отрабатывает корректно.
В общем и целом, это был последний день перед отгрузкой (или по-моему даже день в день перед отгрузкой). Как итог: я сохранил нервы и время (и главное деньги) разработчиков, коллег из бизнеса и на отгрузку релиза. Если бы не найденный дефект - бизнес списал бы время на описание дефекта, на его аналитику и на его ретест со стороны UAT. Плюс возможно сдвинулся бы релиз, а на том проекте это очень строго контролировалось.
Так что не экономьте на тестировании. Оно Вам потом сохраняет и деньги и нервы и время. И защищает от неприятных инцидентов на ПРОД, которые потом могут очень больно ударить по экономике компании.