Введение

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

Пример

При попытке создать приложение, которому необходимо взаимодействовать с приложением на мейнфрейме, но мейнфрейм недоступен во время разработки, можно создать тестовую обвязку для использования в качестве замены. Это может означать, что обычно сложные операции могут быть выполнены с использованием небольшого количества ресурсов за счет предоставления предопределенных данных и ответов, что позволяет избежать необходимости в вычислениях, выполняемых мейнфреймом. Тестовая обвязка может быть частью конечного продукта проекта. Она может храниться отдельно от исходного кода приложения и использоваться повторно в нескольких проектах. Тестовая обвязка имитирует функциональность приложения; она не имеет информации о наборах тестов, тестовых сценариях или отчетах о тестировании. Эти элементы предоставляются тестовым фреймворком и связанными с ним автоматизированными инструментами тестирования. Часть ее задачи – настройка подходящих тестовых окружений. Тестовая обвязка обычно специфична для среды разработки, такой как Java. Однако для использования в более сложных системах были разработаны тестовые обвязки для проверки совместимости.