Глоссарий терминов в области тестирования программного обеспечения

Автономное тестирование — тестирование подпрограмм, модулей, компонент, другими словами, тестирование нижнего уровня.

Альфа-тестирование — тестирование программного продукта штатными работниками, либо потенциальными заказчиками на стороне разработчика. Чаще всего это внутреннее приёмочное тестирование для готового продукта. Иногда этот вид тестирования выполняется с использованием окружения, которое помогает быстро выявить ошибки. После чего, обнаруженные ошибки передаются тестировщикам для дополнительного исследования в окружении, близком к тому, в котором будет использоваться ПО.

Артефакт — семантически законченная часть информации, которая формируется, редактируется или используется процессами. Артефакт может выступать в виде модели, или ее элемента, а так же в виде документа.

Аттестация (Validation) — подтверждение экспертизой  соответствия программного продукта установленным требованиям. Аттестацию чаще всего проводят для готового продукта в заданных условиях эксплуатации. Не исключено проведение аттестации и на более ранних стадиях.

Бета-тестирование — распространение среди потенциальных пользователей  готовой версии  продукта с ограничениями (по функциональности или времени работы), с целью выявление и устранения максимального количество ошибок.

Выпуск — версия элемента конфигурации для реализации конкретной цели (к примеру, тестируемый выпуск).

Инсталляционное тестирование (Installation Testing) — проверить корректную установку системы при различных условиях с софтом и хардом: недостаток места на диске, недостаточные системные требования, отсутствие привилегий создания директорий и т.д. Проверка работы системы при апгрейде со старой версии на новую, так же как и установки с нуля. Установка в различных локализациях.

Интеграционное, или интегральное тестирование (Integration Testing) — полная проверка программного продукта после его сборки, с целью выявления ошибок, возникающих в процессе интеграции программных модулей или компонентов.

Квалификационное испытание — тестирование программного продукта разработчиком (при необходимости санкционированное заказчиком) с целью демонстрации соответствия данного продукта установленным требованиям, а также оценки его готовности к эксплуатации в заданных условиях.

Конфигурационное тестирование (Configuration Testing) — работа при различных конфигурациях системы – заявленных платформах, поддерживаемых драйверах, при различных конфигурациях компьютеров и т.д.

Модульное (Unit-) тестирование  — тестирование отдельных компонентов, изолируя модули от их реального окружения. Эти тесты служат для проверки правильности работы отдельных модулей системы, как правило – классов. Использует White Box Testing.

Нагрузочное тестирование, или тестирование производительности (Performance/Load Testing) — тестирование продукта при заданных известных нагрузках, которые определяются в терминах числа пользователей, объема данных и скорости их обработки (времени отклика). Проводится отдельно от функционального тестирования, на специальном оборудовании (стенде).

Оценка — определение степени соответствия объекта (продукта, системы) заданным критериям.

Приемосдаточные испытания — контрольные испытания программы перед сдачей в эксплуатацию.

Проверка реализации протокола (Conformance Testing) — проверка соответствия реализации протокола установленным требованиям должна выполняться прежде, чем смогут быть выполнены дальнейшие проверки. Этот тип проверок выполняется автоматически запуском стандартных, независимых тестов, каждый из которых имеет свою цель. Часто требуется также представление результата «pass/fail» (соответствие/не соответствие), указывающего причину любой неисправности. Автоматические тесты предлагают исчерпывающий набор испытательных сценариев, которые индивидуально применяют стимулы, чтобы проверить, что протоколы соответствующим образом откликаются/изменяют состояние.

Прототип — работающая модель программы с неполным функционалом.

Регрессионное тестирование (Regression Testing) — повторное тестирование программы после ее функционального усовершенствования или исправления. При регрессионном тестировании перед тестировщиками ставятся следующие задачи: 
1)убедиться, что все ошибки исправлены;
2)гарантировать функциональную преемственность и совместимость новой версии с предыдущими.

Сборочное тестирование — совместное последовательное тестирование компонент программы в процессе сборки.

Системное тестирование — тестируется интегрированная система на её соответствие исходным требованиям.

Стрессовое тестирование (Stress Testing) — тестирование программного продукта в таких экстремальных условиях, как нехватка памяти, одновременное использование большим числом пользователей, функционирование в непрерывном режиме и т.д. Цель этой операции — убедиться, что функциональность не «ломается», когда с системой работает большое число пользователей, что в принципе может приводить к различным конфликтам.

Тестирование «белого ящика» (White Box Testing)  — тестирование на соответствие программного продукта требованиям со знанием внутренней структуры реализации системы (есть в наличии исходный код и технические спецификации). Это вид тестирования позволяет проводить локализацию ошибок, анализ надежности и устойчивости и т.п., существенно повышая качество системы.

Тестирование «черного ящика» (Black Box Testing) — тестирование на соответствие программного продукта требованиям без знания внутренней структуры реализации системы.

Тестирование программного обеспечения — процесс, помогающий определить корректность, полноту и качество разработанного программного обеспечения (ПО). По статистике, мероприятия по тестированию занимают порядка 40% от всего процесса разработки продукта.

Тестируемость (Testability) — это степень, до которой могут быть запланированы реализуемость и объективность тестирования.

Тестовое покрытие —  полнота тестирования системы или программного продукта.

Функциональное тестирование (Functional Testing). Чтобы проверить конкретные функциональные возможности основных протоколов и конкретные функции сетевого элемента, предлагаемые производителем, нужно провести функциональную проверку правильности поведения протоколов сетевых элементов при нормальных и аварийных условиях. Гибкие инструменты имитации протоколов, запускаемые GUI, предоставляют возможность передавать и принимать сообщения вручную или автоматически, таким образом, уменьшая количество сообщений, которые пользователю нужно создавать.

GUI-тесты (тестирование пользовательского интерфейса) — это тестирование графического интерфейса  — окон, меню, кнопок, списков и т.д. Как правила, через пользовательский интерфейс и реализуется большая часть функциональности ПО.