Тестирование производительности

Тренинг

Дата, стоимость и место проведения не установлены.

access_timeПродолжительность

4 дня/6 часов

beenhereРезультат обучения

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

peopleЦелевая аудитория

Тестировщики

local_libraryПрограмма обучения

Первое занятие: обзор

1. Введение в тестирование производительности -- зачем мы его проводим и какие ошибки мы можем обнаружить

2. Базовые составляющие проектирования тестов: сценарии и профиль нагрузки

3. Базовые составляющие выполнения тестов: создание нагрузки и сбор данных

4. Базовые составляющие анализа результатов: средние значения и аномалии

5. Краткий обзор инструментов генерации нагрузки


  • онлайновые генераторы, демонстрация LoadImpact

  • инструменты с декларативным стилем описания сценариев, демонстрация JMeter

  • инструменты с императивным стилем описания сценариев, демонстрация Multi-Mechanize



6. Создание простого генератора нагрузки: запись действий пользователя и воспроизведение записанного сценария в несколько потоков


  • демонстрация записи и воспроизведения



7. Отладка сценария: как понять, что там происходит на самом деле


  • анализ результатов в Tree View



8. Сбор основных метрик: время отклика, пропускная способность, количество отказов


Второе занятие: сценарии и профили нагрузки

1. Требования к производительности систем, анализ требований и определение целей тестирования

2. Что такое модель нагрузки и как она соотносится с целями тестирования

3. Типовые модели нагрузки -- на обнаружение какого рода проблем они нацелены


  • реализация типовых моделей нагрузки в JMeter



4. Тестовые данные и параметризация сценариев


  • глобальные параметры и уникальные данные для каждого виртуального пользователя

  • загрузка данных из файла

  • динамическая генерация данных



5. Корреляция запросов в рамках сценария


  • различные способы извлечения данных из результата запроса



Третье занятие: сбор данных и анализ результатов

1. Сбор основных метрик: время отклика, пропускная способность, количество отказов


  • просмотр в JMeter в режиме реального времени

  • сброс данных в файл и загрузка из файла



2. Архитектура распределённых систем и источники проблем с производительностью

3. Сбор данных о производительности операционной системы, сервера приложений, СУБД

4. Ложно-положительные и ложно-отрицательные результаты

5. Распределённое тестирование


  • генерация нагрузки из нескольких источников

  • сбор данных в распределённой среде



6. Использование Excel для анализа результатов

7. Выявление аномалий (отклонений от нормы)


Четвертое занятие: усложнение сценариев

1. Задержки между запросами

2. Верификация результатов запросов

3. Управление потоком выполнения сценария


  • условные действия

  • циклы

  • случайный порядок выполнения действий

  • как правильно делать login и logout


4. Создание сценариев из переиспользуемых модулей

5. Различные протоколы взаимодействия с тестируемой системой

personПреподаватели

Тренер: Алексей Баранцев
comment Сделать запрос comment