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

Тренинг сайт события http://software-testing.ru/trainings/schedule?task=3&cid=19&sem_midx=2&sem_jidx=0

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

"Младших тестировщиков производительности" не бывает. Зато бывают люди, которые начинают заниматься тестированием производительности.

(с) Скотт Барбер (aka The Perf Guy)

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

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

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

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

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

Формат курса

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

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

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

Кроме того, каждый вторник с 15.00 до 15.30 тренер будет ждать в скайпе и в системе GoToWebinar вопросы участников курса, которым необходима помощь в выполнении домашнего задания.

Первая консультация будет 17 июня И дальше точные даты консультаций 17, 24 июня, 1, 8 июля с 15-00 до 15-30 по московскому времени.

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

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

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 код'

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

С системными требованиями можно ознакомиться здесь: http://www.gotomeeting.com/fec/webinar/webinar_support (раздел "System Requirements & Purchasing", ответ на вопрос "What are the system requirements for running GoToMeeting, GoToWebinar or GoToTraining?"). Ничего устанавливать или платить участникам за эту систему не нужно. Вам просто нужно будет подключиться по ссылке, которую вышлют организаторы.

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

В случае возможных технических сбоев с ведущим можно будет связаться через систему Skype.

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