Конфигурационное тестирование
Конфигурационное тестирование — это один из видов традиционного тестирования производительности. В этом случае вместо того, чтобы тестировать производительность системы с точки зрения подаваемой нагрузки, тестируется эффект влияния на производительность изменений в конфигурации. Хорошим примером такого тестирования могут быть эксперименты с различными методами балансировки нагрузки. Конфигурационное тестирование также может быть совмещено с нагрузочным, стресс или тестированием стабильности.
Содержание
Цели
В зависимости от типа проекта конфигурационное тестирование может иметь разные цели:
- Проект по профилированию работы системы. Цель Тестирования: определить оптимальную конфигурацию оборудования, обеспечивающую требуемые характеристики производительности и времени реакции тестируемой системы.
- Проект по миграции системы с одной платформы на другую. Цель Тестирования: Проверить объект тестирования на совместимость с объявленным в спецификации оборудованием, операционными системами и программными продуктами третьих фирм.
Уровни проведения тестирования
Для клиент-серверных приложений конфигурационное тестирование можно условно разделить на два уровня (для некоторых типов приложений может быть актуален только один):
- Серверный
- Клиентский
Серверный
На серверном уровне, тестируется взаимодействие выпускаемого программного обеспечения с окружением, в которое оно будет установлено:
Аппаратные средства (тип и количество процессоров, объем памяти, характеристики сети / сетевых адаптеров и т.д.) Программные средства (ОС, драйвера и библиотеки, стороннее ПО, влияющее на работу приложения и т.д.) Основной упор здесь делается на тестирование с целью определения оптимальной конфигурации оборудования, удовлетворяющего требуемым характеристикам качества (эффективность, портативность, удобство сопровождения, надежность).
Клиентский
На клиентском уровне, программное обеспечение тестируется с позиции его конечного пользователя и конфигурации его рабочей станции. На этом этапе будут протестированы следующие характеристики:
- удобство использования
- функциональность.
Для этого необходимо будет провести ряд тестов с различными конфигурациями рабочих станций:
- Тип, версия и битность операционной системы (подобный вид тестирования называется кросс-платформенное тестирование)
- Тип и версия Web барузера, в случае если тестируется Web приложение (подобный вид тестирования называется кросс-браузерное тестирование)
- Тип и модель видео адаптера (при тестировании игр это очень важно)
- Работа приложения при различных разрешениях экрана
- Версии драйверов, библиотек и т.д. (для JAVA приложений версия JAVA машины очень важна, тоже можно сказать и для .NET приложений касательно версии .NET библиотеки)
- и т.д.
Порядок проведения тестирования
Перед началом проведения конфигурационного тестирования рекомендуется:
- создавать матрицу покрытия (матрица покрытия - это таблица, в которую заносят все возможные конфигурации)
- проводить приоритезацию конфигураций (на практике, скорее всего, все желаемые конфигурации проверить не получится)
- шаг за шагом, в соответствии с расставленными приоритетами, проверять каждую конфигурацию.
Уже на начальном этапе становится очевидно, что чем больше требований к работе приложения при различных конфигурациях рабочих станций, тем больше тестов необходимо будет провести. В связи с этим, рекомендуем, по возможности, автоматизировать этот процесс, так как именно при конфигурационном тестировании автоматизация реально помогает сэкономить время и ресурсы. Конечно же автоматизированное тестирование не является панацеей, но в данном случае оно окажется очень эффективным помощником.
Выводы
- Конфигурационным называется тестирование совместимости выпускаемого продукта (программное обеспечение) с различным аппаратным и программным средствами
- Основные цели - определение оптимальной конфигурации и проверка совместимости приложения с требуемым окружением (оборудованием, ОС и т.д.)
- Автоматизация конфигурационного тестирования позволяет избежать лишних расходов
Ссылки
Конфигурационное тестирование в Wikipedia
Цели конфигурационного тестирования
Конфигурационное тестирование на примере интеграции продуктов Microsoft