Нагрузочное тестирование

Содержание

Слайд 2

План лекции

Терминология или Введение.
Виды нагрузочного тестирования.
Принципы нагрузочного тестирования.
Цели нагрузочного тестирования.
Этапы проведения нагрузочного

План лекции Терминология или Введение. Виды нагрузочного тестирования. Принципы нагрузочного тестирования. Цели
тестирования.

Слайд 3

Нагрузочное тестирование

Нагрузочное тестирование (Load Testing) или тестирование производительности (Performance Testing) - это автоматизированное тестирование, имитирующее работу

Нагрузочное тестирование Нагрузочное тестирование (Load Testing) или тестирование производительности (Performance Testing) -
определенного количества пользователей на каком-либо общем для них ресурсе.

Слайд 4

Терминология

Виртуальный пользователь (Virtual User) - программный процесс, циклически выполняющий моделируемые операции.
Итерация (Iteration) – это

Терминология Виртуальный пользователь (Virtual User) - программный процесс, циклически выполняющий моделируемые операции.
один повтор выполняемой в цикле операции.
Интенсивность выполнения операции (Operation Intensity) - частота выполнения операции в единицу времени, в тестовом скрипте задается интервалом времени между итерациями.
Нагрузка (Loading) - совокупное выполнение операций на общем ресурсе.
Производительность (Performance) - количество выполняемых операций за период времени (N операций за M часов)

Слайд 5

Терминология

Масштабируемость приложения (Application Scalability) - пропорциональный рост производительности при увеличении нагрузки.
Профиль нагрузки (Performance Profile)

Терминология Масштабируемость приложения (Application Scalability) - пропорциональный рост производительности при увеличении нагрузки.
- это набор операций с заданными интенсивностями, полученный на основе сбора статистических данных либо определенный путем анализа требований к тестируемой системе.
Нагрузочной точкой называется рассчитанное (либо заданное Заказчиком) количество виртуальных пользователей в группах, выполняющих операции с определенными интенсивностями.

Слайд 6

Виды нагрузочного тестирования

Тестирование производительности (Performance testing)- определение масштабируемости приложения под нагрузкой.
Стрессовое тестирование (Stress

Виды нагрузочного тестирования Тестирование производительности (Performance testing)- определение масштабируемости приложения под нагрузкой.
Testing) позволяет проверить насколько приложение и система в целом работоспособны в условиях стресса и также оценить способность системы к регенерации.
Объемное тестирование (Volume Testing) - получение оценки производительности при увеличении объемов данных в базе данных приложения.

Слайд 7

Виды нагрузочного тестирования

Тестирование стабильности или надежности (Stability / Reliability Testing) - проверка работоспособности

Виды нагрузочного тестирования Тестирование стабильности или надежности (Stability / Reliability Testing) -
приложения при длительном тестировании со средним уровнем нагрузки.
Тест на масштабируемость (Scalability Test) оценивает способность системы увеличивать производительность пропорционально увеличению масштаба нефункциональных возможностей.

Слайд 8

Принципы нагрузочного тестирования

Уникальность запросов
Время отклика системы
Зависимость времени отклика системы от степени распределённости

Принципы нагрузочного тестирования Уникальность запросов Время отклика системы Зависимость времени отклика системы
этой системы
Разброс времени отклика системы
Точность воспроизведения профилей нагрузки

Слайд 9

Цели нагрузочного тестирования

Оценка производительности и работоспособности приложения на этапе разработки и передачи

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

Слайд 10

Этапы проведения нагрузочного
тестирования

Анализ требований и сбор информации о тестируемой системе
Конфигурация тестового стенда

Этапы проведения нагрузочного тестирования Анализ требований и сбор информации о тестируемой системе
для нагрузочного тестирования
Разработка модели нагрузки
Выбор инструмента для нагрузочного тестирования
Создание и отладка тестовых скриптов
Проведение тестирования
Анализ результатов
Подготовка, отправка и публикация отчета по проведенному нагрузочному тестированию

Слайд 11

Анализ требований

Время отклика (время необходимое для открытия страницы или получения ожидаемого результата)
Интенсивность (число запросов

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

Слайд 12

Конфигурация стенда

Основные причины, по которым не всегда получается продублировать конфигурацию системы на

Конфигурация стенда Основные причины, по которым не всегда получается продублировать конфигурацию системы
тестовом стенде:
Сложность дублирования дорогого серверного железа для тестовых нужд
Ограничения на использование лицензий требуемого программного обеспечения
Закрытость архитектуры приложения со стороны заказчика по соображениям безопасности
Трудность воссоздания или транспортировки базы данных приложения
Сложность воссоздания требуемой архитектуры сети
и многое другое

Слайд 13

Разработка модели нагрузки

список тестируемых операций
интенсивность выполнения операций
зависимость изменения интенсивности выполнения операций от

Разработка модели нагрузки список тестируемых операций интенсивность выполнения операций зависимость изменения интенсивности выполнения операций от времени
времени

Слайд 14

Инструменты нагрузочного тестирования

Коммерческие инструменты: Hewlett-Packard (Mercury Interactive), IBM Rational, Borland (Segue), SmartBear,

Инструменты нагрузочного тестирования Коммерческие инструменты: Hewlett-Packard (Mercury Interactive), IBM Rational, Borland (Segue),
Neotys, HP Performance Center (включает HP LoadRunner), Rational Performance Tester, Silk Performer, LoadComplete Web Load Testing, NeoLoad
Бесплатные инструменты: Jmeter, Grinder

Слайд 15

Создание и отладка тестов

внедрить приемы обеспечения качества: использование стандартов, шаблонов и инструкций
договориться об

Создание и отладка тестов внедрить приемы обеспечения качества: использование стандартов, шаблонов и
общем использовании одинаковой структуры каталогов, архитектуры скриптов, именовании функций, переменных и транзакций

Слайд 16

Проведение тестирования

Проведение тестирования

Слайд 17

Анализ результатов

Время выполнения запроса(минимальное, максимальное, среднее)
Количество выполненных запросов и процент ошибок
Пропускная способность
Потребление

Анализ результатов Время выполнения запроса(минимальное, максимальное, среднее) Количество выполненных запросов и процент
ресурсов центрального процессора
Потребление оперативной памяти
Потребление сетевых ресурсов
Работа с дисковой подсистемой