Что такое «Тестирование»?
Процесс проверки какого‑либо объекта (продукта, системы, программного обеспечения и т. д.) на соответствие заданным требованиям и выявление дефектов, ошибок или отклонений от ожидаемых результатов (в нормативно‑правовых актах прямого легального определения термина «тестирование» как универсального понятия нет; отдельные виды тестирования регулируются разными актами — например, ст. 13 Федерального закона от 27.07.2006 № 149‑ФЗ «Об информации, информационных технологиях и о защите информации» в части тестирования информационных систем).
Нужна помощь юриста сейчас?Признаки / Существенные характеристики
Целенаправленность: тестирование проводится для достижения конкретных целей (проверка функциональности, безопасности, производительности и т. д.).
Систематичность: процесс организован по определённому плану, с чёткими этапами и критериями оценки.
Наличие критериев оценки: результаты сопоставляются с заранее установленными требованиями или ожиданиями.
Выявление дефектов: основная задача — обнаружить ошибки, уязвимости, несоответствия.
Возможность повторения: тесты могут быть проведены повторно для подтверждения результатов или проверки исправлений.
Использование тестовых данных: для проверки применяются специально подготовленные данные или сценарии.
Виды / Классификация термина «Тестирование»
По объекту тестирования:
- Функциональное тестирование — проверка соответствия функций системы заявленным требованиям.
- Нагрузочное тестирование — оценка поведения системы при высоких нагрузках.
- Тестирование безопасности — выявление уязвимостей и защита от несанкционированного доступа.
- Юзабилити‑тестирование — оценка удобства использования интерфейса.
По степени автоматизации:
- Ручное тестирование — выполняется тестировщиком без использования автоматизированных инструментов.
- Автоматизированное тестирование — используются специальные программы для выполнения тестов.
По стадии разработки:
- Модульное тестирование — проверка отдельных компонентов или модулей.
- Интеграционное тестирование — проверка взаимодействия между компонентами.
- Системное тестирование — проверка всей системы в целом.
- Приёмочное тестирование — финальная проверка перед передачей продукта заказчику.
Законодательство
- Федеральный закон от 27.07.2006 № 149‑ФЗ «Об информации, информационных технологиях и о защите информации» (ст. 13 — в части тестирования информационных систем).
- ГОСТ Р ИСО/МЭК 25000‑2021 «Информационные технологии. Системная и программная инженерия. Требования и оценка качества систем и программного обеспечения (SQuaRE). Общее руководство по качеству и требованиям».
- ГОСТ Р ИСО/МЭК 25010‑2015 «Информационные технологии. Системная и программная инженерия. Требования и оценка качества систем и программного обеспечения (SQuaRE). Модели качества систем и программных продуктов».
Связанные термины
- Отладка (debugging) — процесс устранения ошибок, выявленных в ходе тестирования.
- Валидация — подтверждение того, что продукт соответствует ожиданиям и потребностям пользователя.
- Верификация — проверка соответствия продукта установленным требованиям и спецификациям.
- Тест‑кейс — документ, описывающий набор условий, действий и ожидаемых результатов для проверки конкретной функции.
- Баг (дефект) — ошибка или несоответствие в работе системы, выявленное в ходе тестирования.
Другие определения термина «Тестирование»
В англо‑американском праве термин testing используется в широком смысле для обозначения любых проверок и испытаний (product testing, software testing, security testing).
В международном стандарте ISO/IEC 25000:2014 тестирование определяется как процесс оценки системы или её компонентов с целью определить, удовлетворяет ли она заданным требованиям или выявить различия между фактическим и ожидаемым поведением.
В доктрине компьютерных наук тестирование часто рассматривается как часть процесса обеспечения качества (quality assurance), включающего планирование, проектирование тестов, выполнение и анализ результатов.
История термина «Тестирование»
Термин «тестирование» происходит от английского слова testing (от test — испытание, проверка). В русский язык вошёл в XX веке, первоначально в технической и научной среде.
Эволюция понятия:
- Начало XX века: тестирование применялось в основном в инженерии и науке для проверки оборудования и экспериментов.
- Середина XX века: с развитием вычислительной техники тестирование стало использоваться для проверки программ и алгоритмов.
- Конец XX века: появление специализированных методик тестирования ПО (black‑box, white‑box), формирование стандартов качества.
- XXI век: тестирование стало неотъемлемой частью разработки ПО, информационных систем и цифровых продуктов, появились автоматизированные инструменты и методологии (Agile, DevOps).
Английский язык
- Testing — общий термин, обозначающий процесс проверки.
- Software testing — тестирование программного обеспечения.
- Quality assurance testing — тестирование в рамках обеспечения качества.
- User acceptance testing (UAT) — приёмочное тестирование пользователем.
Пример: The software underwent rigorous testing before its official release to ensure all features worked as expected.
Мнение эксперта / Спорные вопросы
Спорные вопросы:
- Границы между тестированием и отладкой: некоторые специалисты считают отладку частью тестирования, другие — отдельным процессом.
- Степень автоматизации: дискуссии о том, насколько полно можно заменить ручное тестирование автоматизированным, особенно в сложных интерфейсах или нестандартных сценариях.
- Критерии завершения тестирования: нет единого подхода к определению момента, когда тестирование можно считать завершённым (достижение определённого покрытия кода, отсутствие критических ошибок и т. д.).
- Оценка эффективности тестирования: сложность количественной оценки вклада тестирования в общее качество продукта, особенно при отсутствии чётких метрик.
Частые вопросы
Процесс проверки какого‑либо объекта (продукта, системы, программного обеспечения и т. д.) на соответствие заданным требованиям и выявление дефектов, ошибок или отклонений от ожидаемых результатов (в нормативно‑правовых актах прямого легального определения термина «тестирование» как универсального понятия нет; отдельные виды тестирования регулируются разными актами — например, ст. 13 Федерального закона от 27.07.2006 № 149‑ФЗ «Об информации, информационных технологиях и о защите информации» в части тестирования информационных систем).