Ответ
Это разные уровни тестирования с различными целями, исполнителями и критериями успеха.
Системное тестирование (System Testing):
- Цель: Проверить полностью интегрированную систему на соответствие техническим требованиям и спецификациям (Software Requirements Specification, SRS).
- Кто выполняет: Команда QA-инженеров.
- Фокус: Всесторонняя проверка функциональности, производительности, безопасности, надежности, совместимости и других нефункциональных атрибутов.
- Критерий успеха: Система работает в соответствии с техническим заданием.
Приемочное тестирование (User Acceptance Testing, UAT):
- Цель: Убедиться, что система удовлетворяет бизнес-требованиям и готова к использованию в реальных условиях.
- Кто выполняет: Конечные пользователи или заказчик (часто с поддержкой бизнес-аналитиков).
- Фокус: Соответствие реальным бизнес-процессам и сценариям использования (user stories, use cases). Проверяется "удобство" и "полезность".
- Критерий успеха: Система решает бизнес-задачу и может быть принята для эксплуатации.
Пример для системы онлайн-банка:
- Системное тестирование: Проверка, что перевод средств между счетами технически корректен: списание с одного, зачисление на другой, запись в лог, соблюдение ACID.
- Приемочное тестирование: Пользователь (бухгалтер) проверяет, что после перевода в интерфейсе формируется корректная выписка, которую можно распечатать и подшить в отчет.
Ключевое отличие: Системное тестирование отвечает на вопрос "Работает ли система так, как спроектировано?", а приемочное — "Нужна ли такая система пользователю и решает ли она его задачу?".