Как стать автором
Обновить

Тестирование производительности: онлайн-тренинг с домашними заданиями

Время на прочтение 4 мин
Количество просмотров 3.7K
«Младших тестировщиков производительности» не бывает. Зато бывают люди, которые начинают заниматься тестированием производительности. (с) Скотт Барбер (aka The Perf Guy)

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

18 февраля начнется новый онлайн-тренинг, продолжительностью 6 занятий «Тестирование производительности», автор и ведущий Алексей Баранцев.

На тренинге мы будем учиться обращаться с этим оружием:
  • познакомимся с инструментами, предназначенными для генерации нагрузки и для мониторинга различных характеристик производительности,
  • освоим способы использования этих инструментов для генерации нагрузки различного вида,
  • изучим типовые архитектурные шаблоны построения приложений и связанные с этим источники потенциальных проблем с производительностью,
  • рассмотрим способы выявления проблем с производительностью на основе анализа результатов мониторинга.
Однако это только первый этап. В тестировании производительности не только высокий входной порог, достаточно трудно забраться и на вторую ступеньку.
Во второй части тренинга, предназначенной для тех, кто уже овладел простыми приёмами тестирования производительности, мы рассмотрим более глубоко девять основных принципов тестирования производительности, выделенных Скоттом Барбером:
  • Контекст — внешний контекст проекта, в рамках которого выполняется тестирование производительности,
  • Критерии — что можно рассматривать как успешный результат с точки зрения пользователей, бизнеса, проекта, системы,
  • Планирование и проектирование тестов — какие тесты нужны, как их можно сделать и сколько это потребует времени и ресурсов,
  • Настройка — подготовка тестового стенда, а также инструментов для генерации нагрузки и мониторинга,
  • Реализация тестов — разработка тестов в соответствии с ранее задуманным планом,
  • Исполнение — запуск тестов, мониторинг и сбор данных о характеристиках производительности системы,
  • Анализ результатов — оценка качества и достоверности собранных данных и выявление проблем с производительностью,
  • Консолидация результатов — обработка данных для более удобного представления,
  • Итеративный подход — повторение тестирования на разных этапах или с разными вариациями.

Подробная программа курса:


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

1. Введение в тестирование производительности — зачем мы его проводим и какие ошибки мы можем обнаружить.
2. Три базовые составляющие: создание нагрузки, сбор метрик, анализ результатов.
3. Краткий обзор инструментов генерации нагрузки. Более близкое знакомство с инструментом JMeter.
4. Создание простого генератора нагрузки — запись действий пользователя и воспроизведение записанного сценария в несколько потоков.
5. Отладка сценария — как понять, что там происходит на самом деле.
6. Сбор основных метрик — время отклика, пропускная способность, количество отказов.
7. Анализ собранных результатов, подготовка отчёта.

Второе занятие

1. Снова о главном — зачем мы проводим тестирование производительности и какие ошибки мы можем обнаружить.
2. Требования к производительности систем. Анализ требований и определение целей тестирования.
3. Что такое модель нагрузки и как она соотносится с целями тестирования.
4. Перевод целей в практическую плоскость — проектирование тестовых сценариев и их компоновка в соответствии с моделью нагрузки.
5. Тестовые данные, параметризация и корреляция тестовых сценариев.
6. Дополнительные элементы сценария — задержки между запросами, верификация ответов.
7. Дополнительные метрики — сбор данных о производительности операционной системы, сервера приложений, СУБД.

Третье занятие

1. И ещё раз о главном — зачем мы проводим тестирование производительности и какие ошибки мы можем обнаружить.
2. Немного об архитектуре распределённых систем и об источниках проблем с производительностью.
3. Ложно-положительные и ложно-отрицательные результаты, возможные причины их возникновения.
4. Типовые модели нагрузки — на обнаружение какого рода проблем они нацелены.
5. Сложные тестовые сценарии, различные протоколы взаимодействия с тестируемой системой.
6. Распределённое тестирование, генерация нагрузки из нескольких источников, сбор метрик в распределённой среде.
7. Интерпретация результатов — какие здесь подстерегают проблемы и как их избежать.

Формат курса


Онлайн-тренинг, состоящий из двух ступеней разной сложности, с еженедельными онлайн-занятиями и практическими домашними заданиями.
Каждая ступень состоит из трех занятий.
Онлайн-занятия состоятся каждый четверг с 15-00 до 16-30.
Каждый участник курса будет получать обратную связь от тренера по результатам выполнения домашнего задания. Наиболее типичные ошибки будут разбираться на онлайн-занятиях.
Между занятиями в любой момент можно задать вопрос тренеру в форуме.
В случае, если Вы пропустите какое-либо занятие, Вы получите его запись и домашнее задание.

Условия участия


Занятия первой ступени будут проходить 18 февраля, 25 февраля, 4 марта.
Занятия второй ступени будут проходить 8, 15, 22 апреля
Стоимость участия в одной ступени – 2500 рублей, в двух 4000 рублей.

Условия регистрации
Теги:
Хабы:
+1
Комментарии 0
Комментарии Комментировать

Публикации

Истории

Работа

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн