Должен ли системный аналитик участвовать в тестировании?

Ответ

Системный аналитик (СА) должен участвовать в тестировании, но его роль отличается от роли QA-инженера. Это проверка на соответствие требованиям, а не всестороннее тестирование качества.

Задачи аналитика в тестировании:

  1. Приёмочное тестирование (UAT): Проверка, что реализованная функция решает изначальную бизнес-задачу.
  2. Валидация логики: Соответствие поведения системы описанным сценариям использования (Use Cases) и пользовательским историям.
  3. Тестирование «счастливого пути»: Основные сценарии по ТЗ работают корректно.
Чем тестирование СА отличается от QA: Аспект Системный аналитик QA-инженер
Фокус «Что» (требования) «Как» (качество реализации)
Типы тестов Функциональные, сценарные Регрессионные, нагрузочные, security, UX
Цель Соответствие ТЗ Нахождение дефектов, оценка рисков

Пример:

  • СА проверит: «Кнопка 'Рассчитать' выводит корректную сумму согласно бизнес-правилам из ТЗ».
  • QA проверит: «Что происходит с кнопкой при вводе 10 000 символов, двойном клике, отключённом интернете, как она влияет на производительность страницы?».

Вывод: Участие СА критически важно для валидации продукта, но не заменяет работу профессионального тестировщика.

Ответ 18+ 🔞

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

Но тут главное — не путать, ёпта. Его задача — не искать, как сломать кнопку десятью тысячами символов или что будет, если интернет отрубить в самый ответственный момент. Нет, сука.

Его задача — проверить «ЧТО». То самое «что», которое он в требованиях и прописал.

Чем он, собственно, должен заниматься, этот чувак:

  1. Приёмочка (UAT): Сесть и проверить, что вот эта фича, которую месяц делали, реально решает ту самую бизнес-проблему, с которой всё начиналось. Не «вроде работает», а именно решает. Иначе зачем всё это было, блядь?
  2. Логика: Всё ли по сценарию? Нажал сюда — получил то. Выбрал это — система не обосралась, а сделала именно то, что в Use Case нарисовано.
  3. «Счастливый путь»: Основные, самые частые действия пользователя — они должны работать как часы. Без вот этих всех «ой, а тут баг, но мы в следующем спринте пофиксим».

А теперь смотри, в чём разница, чтобы два раза не вставать:

Аспект Системный аналитик (Этот чувак) QA-инженер (Другой чувак)
Фокус «ЧТО» сделали? Соответствует ли тому, что я задумал? «КАК» сделали? Насколько прочно, безопасно и удобно?
Что проверяет Функционал по ТЗ. Сценарии. Всё, что можно сломать: регресс, нагрузку, дыры в безопасности, кривой интерфейс.
Цель Убедиться, что сделали правильную вещь. Убедиться, что сделали вещь правильно.

Простой пример, чтобы вообще всё стало ясно:

  • Аналитик проверит: «Нажал на кнопку "Рассчитать" — сумма на экране совпала с той, которую я в бизнес-правилах накалякал. Всё, доволен, подписываюсь».
  • QA начнёт ебашить: «А что если в поле ввести не число, а "абвгд"? А если на кнопку нажать 100 раз подряд? А если у пользователя экран с разрешением 800x600? А не тормозит ли всё это добро? А если запрос перехватить?»

Вывод, блядь: Без аналитика на тестировании — это как строить дом без архитектора: строители могут сложить стены ровно, но в итоге получится сарай, а не дом. Он — последний рубеж, который кричит: «Да, это то, что нужно бизнесу!». Но это ни разу не отменяет необходимости иметь отдельного маньяка-тестировщика, который будет этот дом пытаться развалить всеми доступными способами. Одно другому не мешает, а, блядь, только помогает!