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

Тренинг сайт события http://software-testing.ru/trainings/

Добавить в календарь:
Поделиться:

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

Для этого вида тестирования требуется хорошее владение оружием, его голыми руками не возьмёшь. Во-первых, нужно само оружие -- тестирование производительности обязательно требует умения пользоваться специальными инструментами. Во-вторых, нужно тщательно изучить соперника -- необходимо хорошее понимание протоколов взаимодействия тестируемой программы с внешним миром и её внутренней физической и логической архитектуры. Ну и конечно же нужно владеть приёмами -- знать какую нагрузку и как подать на тестируемое приложение, и на что смотреть, чтобы выявить проблемы с производительностью.

На тренинге мы будем учиться обращаться с этим оружием:

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

Для практических демонстраций и для выполнения домашних заданий будет использоваться инструмент JMeter.

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

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. Различные протоколы взаимодействия с тестируемой системой

Комментарии (0):

Оставлять комментарии могут только зарегистрированные пользователи

Для получения embed кода необходимо кликнуть правой
кнопкой мыши на видео и выбрать пункт меню
'Сгенерировать HTML код'

Онлайн-тренинг продолжительностью 4 занятия по 1,5 часа с постоянными консультациями в скайп-чате и практическими домашними заданиями.

Каждую неделю в систему дистанционного обучения будет выкладываться запись очередного урока курса.

Все вопросы после прослушивания записи можно будет задать в специальном закрытом форуме или скайп-чате. Тренер будет оперативно отвечать на них.

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

Забыли пароль? Регистрация