39
Мастер-класс по нагрузочному тестированию Web-приложений с использованием инструмента JMeter

Нагрузочное тестирование теория Кожухов

  • Upload
    -

  • View
    3.403

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Нагрузочное тестирование теория Кожухов

Мастер-класс по нагрузочному тестированию Web-

приложений с использованием инструмента JMeter

Page 2: Нагрузочное тестирование теория Кожухов

Докладчик

Кожухов Илья

[email protected]• Skype ra_007

Page 3: Нагрузочное тестирование теория Кожухов

Цели мастер-класса

• Дать аудитории представление о «нагрузочном» тестировании

• Научить участников составлять и запускать первый «нагрузочный» тест с помощью JMeter

Page 4: Нагрузочное тестирование теория Кожухов

План выступления

1. Введение2. Нагрузочное тестирование как один из

этапов тестирования продукта3. Создание тестов на JMeter

Page 5: Нагрузочное тестирование теория Кожухов

1. ВВЕДЕНИЕ В НАГРУЗОЧНОЕ ТЕСТИРОВАНИЕ WEB-ПРИЛОЖЕНИЙ

Что это?Зачем надо?Кому надо?Откуда берется?Результат?

Page 6: Нагрузочное тестирование теория Кожухов

WEB – это много пользователей

• Требовательных• Непредсказуемых• Не готовых ждать• Злых

Page 7: Нагрузочное тестирование теория Кожухов

Что значит «нагрузочное тестирование»?

• Исследование того, как работает система при заданной нагрузке на предмет надежности и эффективности

Тестирование под нагрузкой

Page 8: Нагрузочное тестирование теория Кожухов

Зачем оно надо?

• Как поведет себя приложение?

• Что будет с данными?• Снижение затрат на ошибки

Page 9: Нагрузочное тестирование теория Кожухов

Риски

• Пользователи• Деньги• Репутация• Данные

Page 10: Нагрузочное тестирование теория Кожухов

Кому оно надо?

• Пользователи• Команда:• Менеджеры• Разработчики• Группа внедрения/

продвижения

Page 11: Нагрузочное тестирование теория Кожухов

Затраты

• Время– изучение– создание– доработка

• Финансы• Нервы

Page 12: Нагрузочное тестирование теория Кожухов

Откуда оно берется?

• Проблема/ необходимость• Качество• Требования• «Все делают, чем мы хуже?»

Page 13: Нагрузочное тестирование теория Кожухов

Результат

• Эффективно и надежно работающее приложение

• Довольные пользователи• Все счастливы!

Page 14: Нагрузочное тестирование теория Кожухов

2. НАГРУЗОЧНОЕ ТЕСТИРОВАНИЕ КАК ОДИН ИЗ ЭТАПОВ ТЕСТИРОВАНИЯ ПРОДУКТА

ЦелиПроцессМетрикиПрофили

Page 15: Нагрузочное тестирование теория Кожухов

Цели

• Максимальное количество пользователей

• Скорость работы приложения

• «Узкое место»• Способность к регенерации• Нет ли деградации?

Page 16: Нагрузочное тестирование теория Кожухов

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

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

управление

вход выход

ресурсы

Page 17: Нагрузочное тестирование теория Кожухов

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

Цель Проблема

Стабильно работающее приложение

Информация о системе

Требования

СтендИнструментарийСпециалист

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

Page 18: Нагрузочное тестирование теория Кожухов

Нагрузочное тестирование веб-приложения

Тестируемая система

Характеристики нагрузки

Метрики

Информация о поведении системы

Ошибки

Page 19: Нагрузочное тестирование теория Кожухов

Тестируемая система

• Состояние приложения• Продуктив vs Тестовый

стенд• Настройки веб-сервера• Сеть

Page 20: Нагрузочное тестирование теория Кожухов

Вход – характеристики нагрузки

• Количество пользователей• Время• Модель• Интенсивность запросов• Объем данных

Page 21: Нагрузочное тестирование теория Кожухов

Метрики

• Метрики – это численные показатели тех или иных параметров тестируемой системы.

Page 22: Нагрузочное тестирование теория Кожухов

Метрики. Разновидности

• Время отклика• Загрузка процессора• Потребление оперативной

памяти• Дисковое пространство• Использование сети• Показатели тестируемой

системы

Page 23: Нагрузочное тестирование теория Кожухов

Метрики. Обращаем внимание

• Относительные показатели

• Зависимости• Динамика• Скачки

Page 24: Нагрузочное тестирование теория Кожухов

Профиль нагрузки

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

Page 25: Нагрузочное тестирование теория Кожухов

Типичные профили

• Нагрузочное (Load)• Производительность (Performance)• Стресс (Stress)• Объемное (Volume) • Надежность (Endurance)

Page 26: Нагрузочное тестирование теория Кожухов

Нагрузочное тестирование (Load Testing). Зачем?

• Определение максимальной нагрузки• Определение узкого места

Page 27: Нагрузочное тестирование теория Кожухов

Нагрузочное тестирование (Load Testing). Как?

• Увеличение нагрузки до выяснения предела.

Page 28: Нагрузочное тестирование теория Кожухов

Тестирование производительности (Performance Testing). Зачем?

• Определение быстроты работы приложения – при какой нагрузке приложение работает

быстро?– при какой нагрузке приложение начинает

работать медленно?

Page 29: Нагрузочное тестирование теория Кожухов

Тестирование производительности (Performance Testing). Как?

• Подача средней нагрузки

Page 30: Нагрузочное тестирование теория Кожухов

Стресс(Stress Testing). Зачем?

• Узнать поведение системы при падении• Устойчивость к отказам• Способность к регенерации

Page 31: Нагрузочное тестирование теория Кожухов

Стресс(Stress Testing). Как?

• Всплески запредельной нагрузки

Page 32: Нагрузочное тестирование теория Кожухов

Объемное тестирование(Volume Testing). Зачем?

• Поведение системы при больших объемах данных– возникают ли проблемы из-за объема данных?– характеристики производительности при

большом объеме данных

Page 33: Нагрузочное тестирование теория Кожухов

Объемное тестирование(Volume Testing). Как?

• На большом объеме данных– нагрузочное тестирование – тестирование производительности

Page 34: Нагрузочное тестирование теория Кожухов

Тестирование надежности(Endurance Testing). Зачем?

• Нет ли деградации?:– ресурсов– времени отклика– веб-приложения

Page 35: Нагрузочное тестирование теория Кожухов

Тестирование надежности(Endurance Testing). Как?

• Подача средней нагрузки длительный промежуток времени

Page 36: Нагрузочное тестирование теория Кожухов

Порядок проведения.До нагрузочного.

• Функциональное• Многопользовательское

Page 37: Нагрузочное тестирование теория Кожухов

Порядок проведения

• Анализ веб-приложения• Подготовка• Разработка тестов• Отладка тестов • Выполнение тестов• Анализ результатов

Page 38: Нагрузочное тестирование теория Кожухов

Закрепление материала

• Руководствуемся целью• Подаем нагрузку по профилю• Снимаем метрики• Анализируем результаты

Page 39: Нагрузочное тестирование теория Кожухов

Кофебрейк