Что такое инсталляционное тестирование (Installation Testing)?

«Что такое инсталляционное тестирование (Installation Testing)?» — вопрос из категории Основы тестирования, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

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

Основные цели и проверяемые аспекты:

  1. Корректность установки:
    • Создаются ли все необходимые файлы, папки, записи в реестре (Windows) или конфигурационные файлы.
    • Корректно ли регистрируются службы (services) или демоны.
  2. Совместимость и требования:
    • Установка на разных версиях ОС (Windows 10/11, разные дистрибутивы Linux).
    • Проверка прав доступа (установка от имени обычного пользователя vs администратора).
    • Наличие необходимых зависимостей (.NET Framework, Java Runtime, системных библиотек).
  3. Отказоустойчивость:
    • Обработка прерванной установки (откат изменений, rollback).
    • Повторная установка поверх существующей версии.
  4. Удобство и корректность:
    • Работа с путями, содержащими пробелы или национальные символы.
    • Корректность мастера установки (UI/UX), включая выбор компонентов и пути.
    • Создание ярлыков в меню «Пуск» или на рабочем столе.

Пример тест-кейса:

Feature: Installation
  Scenario: Silent installation with custom path
    Given A clean Windows 11 system
    When I run "setup.exe /S /D=C:My App" from command line
    Then The application installs without user interaction
    And All files are placed in "C:My App"
    And The application launches successfully from the Start Menu

Дополнительные сценарии: тестирование обновления с предыдущих версий, портативной (portable) установки, мультиязычных инсталляторов и удаления с очисткой всех следов программы.