Введение

Большинство программных систем имеют процедуры установки, необходимые перед началом их использования по назначению. Тестирование этих процедур, направленное на получение установленной программной системы, готовой к использованию, называется инсталляционным тестированием. Эти процедуры могут включать полное или частичное обновление, а также процессы установки и удаления. Инсталляционное тестирование выявляет ошибки, возникающие в процессе установки и влияющие на восприятие и возможность использования программного обеспечения пользователем. Существует множество факторов, которые могут повлиять на установку программного обеспечения, и инсталляционное тестирование проверяет корректность установки, а также ряд связанных действий и событий. Примеры включают следующее: пользователю необходимо выбирать различные параметры; зависимые файлы и библиотеки должны быть выделены, загружены или найдены; должны присутствовать допустимые аппаратные конфигурации; программным системам может потребоваться подключение к другим программным системам. Обычно это тестирование выполняется в рамках операционного приемочного тестирования инженером по тестированию программного обеспечения совместно с менеджером по конфигурации. Тестирование внедрения обычно определяется как тестирование, при котором скомпилированная версия кода помещается в тестовую или предпроизводственную среду, откуда она может быть или не быть перенесена в производственную среду. Как правило, это происходит за пределами среды разработки программного обеспечения, чтобы избежать повреждения кода из-за других будущих или прошлых релизов (или использования неверной версии зависимостей, таких как общие библиотеки), которые могут находиться в среде разработки. Самый простой способ установки – запуск программы установки, иногда называемой пакетом программного обеспечения. Этот пакет обычно использует программу настройки, которая выступает в качестве многоконфигурационного инструмента и позволяет устанавливать программное обеспечение на различные машины и/или операционные среды. Каждая возможная конфигурация должна пройти соответствующий уровень тестирования, чтобы ее можно было уверенно предоставить клиентам. В распределенных системах, особенно при выпуске программного обеспечения в уже работающую целевую среду (например, на действующий веб-сайт), установка (или развертывание программного обеспечения, как это иногда называют) может включать изменения схемы базы данных, а также установку нового программного обеспечения. Планы развертывания в таких случаях могут включать процедуры отката, предназначенные для возврата целевой среды в исходное состояние в случае неудачного развертывания. В идеале, сам план развертывания должен быть протестирован в среде, являющейся точной копией рабочей среды. Фактором, увеличивающим организационные требования к такому процессу, является необходимость синхронизации данных в тестовой среде с данными в рабочей среде с минимальным прерыванием работы. Этот тип внедрения может включать тестирование процессов, происходящих во время установки или обновления многоуровневого приложения. Этот тип тестирования часто сравнивают с генеральной репетицией или даже называют "пробным запуском".