Тестирование производительности
Онлайн-тренинг состоящий из 6-ти полуторачасовых занятий с домашними заданиями
В тестировании компьютерных программ есть “общедоступная” область функционального тестирования, куда доступ открыт всем желающим, и есть целый ряд областей с достаточно высоким “порогом входа”, и тестирование производительности находится в их числе.
Для этого вида тестирования требуется хорошее владение оружием, его голыми руками не возьмёшь. Во-первых, нужно само оружие — тестирование производительности обязательно требует умения пользоваться специальными инструментами. Во-вторых, нужно тщательно изучить соперника — необходимо хорошее понимание протоколов взаимодействия тестируемой программы с внешним миром и её внутренней физической и логической архитектуры. Ну и конечно же нужно владеть приёмами — знать какую нагрузку и как подать на тестируемое приложение, и на что смотреть, чтобы выявить проблемы с производительностью.
На тренинге мы будем учиться обращаться с этим оружием:
- познакомимся с инструментами, предназначенными для генерации нагрузки и для мониторинга различных характеристик производительности,
- освоим способы использования этих инструментов для генерации нагрузки различного вида,
- изучим типовые архитектурные шаблоны построения приложений и связанные с этим источники потенциальных проблем с производительностью,
- рассмотрим способы выявления проблем с производительностью на основе анализа результатов мониторинга.
Однако это только первый этап. В тестировании производительности не только высокий входной порог, достаточно трудно забраться и на вторую ступеньку.
Во второй части тренинга, предназначенной для тех, кто уже овладел простыми приёмами тестирования производительности, мы рассмотрим более глубоко девять основных принципов тестирования производительности, выделенных Скоттом Барбером:
- Контекст – внешний контекст проекта, в рамках которого выполняется тестирование производительности,
- Критерии – что можно рассматривать как успешный результат с точки зрения пользователей, бизнеса, проекта, системы,
- Планирование и проектирование тестов – какие тесты нужны, как их можно сделать и сколько это потребует времени и ресурсов,
- Настройка – подготовка тестового стенда, а также инструментов для генерации нагрузки и мониторинга,
- Реализация тестов – разработка тестов в соответствии с ранее задуманным планом,
- Исполнение – запуск тестов, мониторинг и сбор данных о характеристиках производительности системы,
- Анализ результатов – оценка качества и достоверности собранных данных и выявление проблем с производительностью,
- Консолидация результатов – обработка данных для более удобного представления,
- Итеративный подход – повторение тестирования на разных этапах или с разными вариациями.
Онлайн-тренинг, состоящий из двух ступеней разной сложности, с еженедельными онлайн-занятиями и практическими домашними заданиями.
Каждая ступень состоит из трех занятий. Онлайн-занятия состоятся каждый четверг с 15-00 до 16-30.