Наши контакты

trainings@software-testing.ru
+7 (916) 025-48-95

Ближайшие онлайн

Ближайшие очные

Конференции

    Меню сайта

    Календарь событий

    «   Июнь 2016   »
    ПВСЧПСВ
      1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
       

    полное расписание ...

    Тестирование производительности
    Описание
    Онлайн-тренинг с домашними заданиями, 6 часов теории, много практики + постоянные консультации тренера в скайп-чате
    Название: Тестирование производительности
    Начало: 29 Июля 2016, в 00:00
    Окончание: 26 Августа 2016, в 13:30
    Тренер: Баранцев Алексей
    Место проведения: онлайн
    Стоимость для физлиц: руб. 6 500

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

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

    Новый, полностью переписанный курс.

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

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

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

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

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

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

    Занятие 1. Обзор

    Модуль 1.1. Введение

    • Что такое производительность? Тестирование производительности -- зачем мы его проводим?
    • Функциональные и нефункциональные характеристики качества. Производительность + надёжность + удобство использования (дизайн). Скорость и ресурсоёмкость. Уровни изменений: производительность алгоритмов, производительность ПО, производительность человека, использующего ПО.
    • Какие ошибки мы можем обнаружить: узкое место («бутылочное горлышко»), медленная подсистема/функция, точки насыщения, функциональные дефекты.
    • Ложно-положительные и ложно-отрицательные результаты.

    Модуль 1.2. Проектирование тестов

    • Сценарий. Запросы (действия, из которых состоит сценарий).
    • Профиль нагрузки.
    • Задержки.

    Модуль 1.3. Выбор инструментов

    • Способ описания сценариев.
    • Рекордер.
    • Генераторы нагрузки.
    • Сбор данных.
    • Анализ данных.

    Модуль 1.4. Примеры инструментов

    • Инструменты с декларативным стилем описания сценариев.
    • Инструменты с императивным стилем описания сценариев.
    • Тестирование клиентской производительности.
    • Облачные сервисы.

    Модуль 1.5. Пример создания сценариев в JMeter

    • Запись сценария рекордером.
    • Воспроизведения сценария.
    • Отладка и доработка сценария. Использование прокси-серверов для отладки.
    • Сбор метрик скорости: время отклика, пропускная способность, количество отказов.

    Занятие 2. Сценарии

    Модуль 2.1. Протоколы взаимодействия с тестируемой системой

    • Сетевые протоколы.
    • Удалённые программные интерфейсы (Remote API).
    • API, за которыми скрывается что угодно.

    Модуль 2.2. Проектирование сценариев

    • Моделирование поведения пользователей.
    • Что считать – пользователей или запросы?
    • Задержки между запросами.
    • Управление логикой сценария.
    • Как правильно делать login и logout.
    • Создание сценариев из переиспользуемых модулей.

    Модуль 2.3. Работа с данными в JMeter

    • Глобальные параметры (адрес тестового стенда и т.п.)
    • Автоподстановка параметров во время записи сценариев.
    • Генерация случайных данных.
    • Генерация уникальных данных.
    • Чтение данных из внешних файлов.

    Модуль 2.4. Корреляция данных в JMeter

    • Выявление данных, требующих корреляции.
    • Экстракторы: регулярные выражения, XPath, CSS Selectors.

    Модуль 2.5. Проверки (assertions)

    • Функциональные проверки
    • Контроль времени отклика
    • Таймауты

    Занятие 3. Нагрузка

    Модуль 3.1. Требования к производительности

    • Требования к скорости.
    • Требования к надёжности.
    • Требования к ресурсоёмкости.
    • Требования к окружению.
    • Динамические и статические требования.
    • Средние значения и аномалии.

    Модуль 3.2. Цели тестирования и профили нагрузки

    • Анализ требований и определение целей тестирования.
    • Что такое модель нагрузки и как она соотносится с целями тестирования.
    • Типовые модели нагрузки: на обнаружение какого рода проблем они нацелены.

    Модуль 3.3. Реализация типовых моделей нагрузки в JMeter

    • Постоянная нагрузка
    • Возрастающая нагрузка
    • Пиковые нагрузки

    Модуль 3.4. Выполнение тестов

    • Калибровка сценариев.
    • Функциональное тестирование в параллельном режиме.
    • Стабилизация показателей и определение базы (baseline).
    • Запуск с различными вариациями.
    • Что делать во то время, пока выполняются тесты?

    Модуль 3.5. Тестирование клиентской производительности

    • Встроенные в браузеры средств.
    • Плагины к браузерам.
    • Прокси-сервера.
    • Облачные сервисы.

    Занятие 4. Анализ результатов

    Модуль 4.1. Подготовка тестового стенда

    • Сервера.
    • Сеть.
    • Виртуальные машины.
    • Настройки.
    • Фоновая загрузка.
    • Генераторы нагрузки.

    Модуль 4.2. Сбор данных

    • Время отклика, пропускная способность, количество отказов.
    • Мониторинг тестируемой системы.

    Модуль 4.3. Распределённое тестирование

    • Генерация нагрузки из нескольких источников.
    • Сбор данных в распределённой среде.

    Модуль 4.4. Анализ результатов и построение отчётов

    • Встроенные в инструменты средства анализа результатов.
    • Excel и другие электронные таблицы.
    • Специализированные пакеты для статистических расчётов.

    Модуль 4.5. Построение отчётов

    • Как должен выглядеть «понятный» отчёт.
    • Интерпретация и представление результатов.
    • Связывание результатов с целями тестирования и требованиями.

    Формат курса

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

    Обучение происходит следующим образом:

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

    Теоретическую информацию можно посмотреть в любое удобное время.

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

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

    Все выпускники, успешно сдавшие домашние задания, получают сертификат.

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

    Дата начала: курс начнется 29 июля (не позже этой даты будет выложена первая запись) и будет проходить до 26 августа.

    Стоимость участия для физических лиц в тренинге: 6 500 рублей.

    Стоимость участия для юридических лиц: 7 500 рублей за весь курс за одного участника. При регистрации от 3-х участников на один курс действует 15% скидка.

    Внимание: при регистрации и оплате до 12 июля на новую версию тренинга действует старая цена -- 5000 рублей для физических и 6000 рублей для юридических лиц.

    Оплатить прямо сейчас

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

    Для того, чтобы зарегистрироваться необходимо отправить письмо с указанием названия тренинга и ФИО на адрес trainings@software-testing.ru

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

    Информация для физических лиц

    Услуги оказываются на основании публичного договора оферты. Ознакомиться с договором можно ЗДЕСЬ.

    Оплата через банк

    Скачать квитанцию для оплаты можно ЗДЕСЬ (квитанция универсальная на все наши семинары и тренинги, в неё необходимо вписать нужную сумму и в графе наименование платежа указать дату и название тренинга).

    Оплата через интернет банкинг

    рекомендуем: самый простой способ оплаты с минимальной комиссией для тех, кто имеет интернет-банк любого банка и находится на территории России

    Оплатить участие можно, используя возможности вашего интернет банкинга. Для оплаты Вам понадобятся следующие реквизиты:

    ИП Баранцев Алексей Владимирович

    ИНН 501208546235

    Банковские реквизиты:

    Р/с 40802810810120359601
    в ПАО «Промсвязьбанк», г.Москва
    К/с 30101810400000000555
    БИК 044525555

    Назначение платежа: Предоплата за участие в тренинге "Впишите название тренинга", без НДС согласно ст. 346.11, п.3, части II Налогового Кодекса РФ

    Обратите внимание, что "ИП Баранцев Алексей Владимирович" -- это название организации, а не физическое лицо.

    Оплата картой (российской или зарубежной)

    Оплатить картой можно через PayPal (при оформлении заказа берется дополнительная комиссия 3,2%). Cистема работает с картами любых стран - Visa, MasterCard и American Express и Maestro.

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

    Если у вас есть счет PayPal, войдите в систему, используя ваш адрес электронной почты и пароль в PayPal.

    Иначе вам нужно будет ввести данные вашей банковской карты, адрес, телефон и адрес электронной почты.

    Информация для юридических лиц:

    По вопросам оформления договора и выставления счета на оплату обращайтесь по адресу trainings@software-testing.ru. Обратите внимание, что при постоплате стоимость тренинга увеличивается на 25%.

    Возможна оплата участия на условиях публичного договора оферты. Ознакомиться с договором можно ЗДЕСЬ. По вопросам выставления счета на оплату обращайтесь по адресу trainings@software-testing.ru

    Тестирование производительности веб-приложений, v.3.0

    L1. Введение

    L1M1. Введение

    1. Что такое производительность? Тестирование производительности -- зачем мы его проводим?

    2. Функциональные и нефункциональные характеристики качества. Производительность + надёжность + удобство использования (дизайн). Скорость и ресурсоёмкость. Уровни изменений: производительность алгоритмов, производительность ПО, производительность человека, использующего ПО.

    3. Какие ошибки мы можем обнаружить: узкое место («бутылочное горлышко»), медленная подсистема/функция, точки насыщения, функциональные дефекты.

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

    L1M2. Проектирование тестов

    1. Сценарий. Запросы (действия, из которых состоит сценарий).

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

    3. Задержки.

    L1M3. Выбор инструментов

    1. Способ описания сценариев.

    2. Рекордер.

    3. Генераторы нагрузки.

    4. Сбор данных.

    5. Анализ данных (средние значения, аномалии).

    L1M4. Примеры инструментов

    1. Облачные сервисы, демонстрация LoadImpact.

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

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

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

    5. Тестирование через браузер, демонстрация ???

    L1M5. Пример создания сценариев в JMeter

    1. Запись сценария рекордером.

    2. Воспроизведения сценария.

    3. Отладка и доработка сценария. Использование прокси-серверов для отладки.

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

    L2. Сценарии

    L2M1. Протоколы взаимодействия с тестируемой системой

    1. Сетевые протоколы.

    2. Удалённые программные интерфейсы (Remote API).

    3. API, за которыми скрывается что угодно.

    L2M2. Проектирование сценариев

    1. Моделирование поведения пользователей.

    2. Что считать – пользователей или запросы?

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

    4. Управление логикой сценария.

    5. Как правильно делать login и logout.

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

    L2M3. Работа с тестовыми данными в JMeter

    1. Глобальные параметры (адрес тестового стенда и т.п.)

    2. Автоподстановка параметров во время записи сценариев.

    3. Генерация случайных данных.

    4. Генерация уникальных данных.

    5. Чтение данных из внешних файлов.

    L2M4. Корреляция данных в JMeter

    1. Выявление данных, требующих корреляции.

    2. Экстракторы: регулярные выражения, XPath, CSS Selectors.

    L2M5. Проверки (assertions)

    1. Функциональные проверки

    2. Контроль времени отклика

    3. Таймауты

    L3. Нагрузка

    L3M1. Требования к производительности

    1. Требования к скорости.

    2. Требования к надёжности.

    3. Требования к ресурсоёмкости.

    4. Требования к окружению.

    5. Динамические и статические требования.

    6. Средние значения и аномалии.

    L3M2. Цели тестирования и профили нагрузки

    1. Анализ требований и определение целей тестирования.

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

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

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

    1. Постоянная нагрузка

    2. Возрастающая нагрузка

    3. Пиковые нагрузки

    L3M4. Выполнение тестов

    1. Калибровка сценариев.

    2. Функциональное тестирование в параллельном режиме.

    3. Стабилизация показателей и определение базы (baseline).

    4. Запуск с различными вариациями.

    5. Что делать во то время, пока выполняются тесты?

    L3M5. Тестирование клиентской производительности

    1. Встроенные в браузеры средства, демонстрация Firefox и Chrome.

    2. Плагины к браузерам, демонстрация ???

    3. Прокси-сервера, демонстрация Fiddler.

    4. Облачные сервисы, демонстрация ???

    L4. Анализ результатов

    L4M1. Подготовка тестового стенда

    1. Сервера.

    2. Сеть.

    3. Виртуальные машины.

    4. Настройки.

    5. Фоновая загрузка.

    6. Генераторы нагрузки.

    L4M2. Сбор данных

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

    2. Мониторинг тестируемой системы, демонстрация Zabbix.

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

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

    2. Сбор данных в распределённой среде.

    L4M4. Анализ результатов и построение отчётов

    1. Встроенные в инструменты средства анализа результатов.

    2. Excel и другие электронные таблицы.

    3. Специализированные пакеты для статистических расчётов.

    4. Как должен выглядеть «понятный» отчёт.