PM
Team Leader
SQA Days 7
Kharkov QA Club
ZoralLabs
It-Jam 2010
http://myqanotes.blogspot.com
It-Jam 2011
PO
QA
QAConf 1.0
BA
О нагрузочном тестировании
Обсудим этапы
Цели
Какие данные собирать при тестах
Поподробнее анализ результатов◦ Основные шаги
◦ Метрики, графики, картинки
Рассмотрим пример
Узнать нефункциональные требования (часть касающуюся перфоманса)◦ желаемое максимальное время отклика◦ Сколько людей планируется для использования
системы◦ Хранимые и обрабатываемые объемы данных
Узнать систему получше◦ Что она и как делает◦ Архитектуру системы
Определиться с инфраструктурой◦ купить копию production сервера
Развернуть ее Иметь приложение, которое можно грузить или
какие-то его компоненты (сервисы, отдельные модули)
Проработка и проектирование сценариев
Создание и отладка
Организация проведения и запуск
Анализ и отладка системы
- от пары минут до пары дней
- дня три, может четыре
- один-три дня и 10-120-500 минут
- от получаса до пары человеконедель
Архитектурные риски◦ Спрашиваем у архитекторов и разработчиков
самые «стремные» места по их мнению
Функциональные риски◦ Спрашиваем в продуктового менеджмента самые
важные функции системы
Сопоставляем и создаем тестовые приоритеты
Анализируем количественно ошибки. Смотрим на◦ Количество, общий процент
◦ И для каждой операции, шага в тесте
Разбиваем на типы ошибок
Анализируем причины их возникновения◦ Сбой сервера приложения
500е
400е и остальные
assertion errors
◦ Сбой клиента (нагрузочного инструмента)
определить пропускную способность сервера системы;
определить места системы, где пропускная способность ниже;
пропускную способоность
Среднее время отклика
и самое главное - процент ошибочных транзакций
также посланную нагрузку в каждый момент времени теста◦ и если тут проблемы, то использование
памяти, процессора и логи инструмента на нагрузочном окружении
время отсылки запроса
Время отклика сервера
Время обработки сервером запроса
Время задержки сети
Ресуры сервера с тестовым приложением и его базы данных
Данные о сервере приложения (потоки)
маркировать каждую транзакцию: каким потоком (вирт узверем) она была отослана
само собой◦ средние: времени отклика,◦ использования процессора◦ и памяти,◦ пропускной способности; ◦ а также минимальное или максимальное.
во времени: ◦ время отклика;◦ Использование памяти, процессора;◦ процессора и ввод-вывод БД;◦ количество транзакций отосланных, полученых;
распределение времени отклика как случайной величины и кумулятивное распределение
Собирайте максимум данных(но помните, что это может влиять на результат)
Анализируйте не только сами результаты теста –
но и все доступные логи, данные в ХД
Лучший источник реальных данных –production server(но не грузите его в prime time или если аккуратно )
Копайте как можно глубже(но не забывайте, что результаты могут лежать и на поверхности и не требовать тестов)
http://goo.gl/0P3yZ
http://myqanotes.blogspot.com/2012/03/jmeter-plugins.html