Ошибки начинающего специалиста по нагрузочному...

19
Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Upload: sqalab

Post on 15-Jun-2015

392 views

Category:

Education


2 download

DESCRIPTION

Доклад Василия Кудрявцева, SQA Days-13, 26-27 апреля 2013, www.sqadays.com

TRANSCRIPT

Page 1: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Ошибки начинающего специалиста

по нагрузочному тестированию

и как их избежать

Page 2: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Слайд 2 из 19

Кудрявцев Василий Сергеевич,Ведущий специалист по нагрузочному тестированиюкомпании «Дататех», ГК «АйТи».

Введение

Кто я?

Выполняю проекты по нагрузочному тестированию разрабатываемых компанией продуктов около полутора лет;Основная схема работы: Заказчик — Разработчик — Тестировщик.

Используемый инструмент: HP LoadRunner;Тип тестируемых приложений: Web;

Page 3: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Суть:Проблемные ситуации на 5-ти основных этапах проведения НТ:1. Инициация;2. Подготовка методики НТ;3. Подготовка средств НТ;4. Проведение тестирования;5. Подготовка отчета.

Введение

О чём я?

Цели:1. Преобразовать проблемы в задачи;2. Найти путь решения на раннем этапе;3. Снизить трудозатраты на НТ в общем.

Слайд 3 из 19

Page 4: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Методика нагрузочного тестирования (НТ) — содержит цели тестирования, ограничения, стратегию тестирования, перечень проводимых тестов и другую информацию о проводимом НТ;

Средства нагрузочного тестирования (СНТ) — cкрипты и сценарии создания нагрузки, средства подготовки БД, средства подготовки тестовых данных, эмуляторы и средства мониторинга;

Инстанс мониторинга — экземпляр мониторинга, описанный назначением и именем машины (аппаратная загрузка машины портала portal1, счетчики СУБД сервисов обработки данных serv-data2);

Количество хитов в секунду (Hits/sec) — показатель интенсивности нагрузки на Систему, выражающий количество запросов в единицу времени.

Введение

НТ, методика? Глоссарий!

Слайд 4 из 19

Page 5: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Инициация

Учет участников проекта«Ты кто такой, давай до свидания!»

# Ситуация: В процессе проведения испытаний, в проект был вовлечен ранее неизвестный сторонний разработчик.

‼ Проблема: Новый участник начал вносить изменения в модель нагрузки на позднем этапе проекта НТ.

Решение: Составлять матрицу участников на этапе инициации, учитывая роль в проекте, заинтересованность и полномочия.

Слайд 5 из 19

Page 6: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Инициация

Выбираем ключевой функционал«Семь операций исключи, одну тестируй!»

# Ситуация: Включено несколько однотипных с точки зрения нагрузки операций.

‼ Проблема: На разработку скриптов ушло больше времени. Решение: Изучать операции на однотипность, выбрать ключевые

из нескольких.

Слайд 6 из 19

Page 7: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Подготовка методики НТ

Неразработанный функционалОперации-призраки.

# Ситуация: В методику включен неразработанный функционал.‼ Проблема: Во время разработки скриптов, функционал уже не

соответствовал документам. Решение: Не включать в методику операции, функционал которых

еще не разработан, либо описывать отступления и ограничения.

Слайд 7 из 19

Page 8: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Подготовка методики НТ

Несоответствие мониторингаМониторь то, не знаю что.

# Ситуация: В методике неверно указали инстансы и метрики мониторинга.

‼ Проблема: Во время проведения испытаний пришлось в срочном порядке искать аналоги метрик и средств мониторинга.

Решение: Подробно описывать в методике действительную конфигурацию стенда, инстансы и метрики мониторинга.

Слайд 8 из 19

Page 9: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Подготовка методики НТ

Помощь при выборе мониторинга500 счетчиков СУБД, какой включить?

# Ситуация: На выбор метрик мониторинга ранее неизвестного инстанса было потрачено несколько дней.

‼ Проблема: Позже выяснилось, что некоторые счетчики лишние, а нужные не добавили.

Решение: Совещаться с командой по поводу выбора метрик и возможных средств мониторинга.

Слайд 9 из 19

Page 10: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Подготовка методики НТ

Критерии времени откликаУгнать за 60 секунд, логиниться за секунду.

# Ситуация: Не был проведен должный анализ предложенных Заказчиком критериев времени отклика.

‼ Проблема: Неутешительные результаты тестирования — несоответствие критериям у большинства бизнес-операций.

Решение: Обсуждать критерии с Заказчиком и разработчиком, аргументировать изменения.

Слайд 10 из 19

Page 11: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Подготовка СНТ

Учетные записи пользователейВходит и выходит.

# Ситуация: Отладка скриптов осуществлялась для одного логина и одной роли.

‼ Проблема: Во время проведения испытаний проявились ошибки, связанные с ролями и логинами.

Решение: Осуществлять проверку всех используемых ролей и логинов.

Слайд 11 из 19

Page 12: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Подготовка СНТ

Фиксация версии ПОБаги пофиксили, скрипты поломали.

# Ситуация: В ходе написания скриптов разработчики обновили версию Системы на стенде.

‼ Проблема: Поменялись ID элементов, скрипты поломались, пришлось перезаписывать.

Решение: Фиксировать версию программных компонентов, в планах учитывать риски перезаписи скриптов.

Слайд 12 из 19

Page 13: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Проведение тестирования

Предварительный запуск тестов70000 пользователей за 1 минуту!

# Ситуация: После запуска нагрузочного теста по методике, Система утратила работоспособность.

‼ Проблема: Восстановление работоспособности заняло много времени, запуск испытаний был отложен.

Решение: Следует проверять сценарии предварительными запусками с уменьшенной нагрузкой и длительностью.

Слайд 13 из 19

Page 14: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Проведение тестирования

Отклонения от методикиТестировали по методике, а в итоге недогрузили…

# Ситуация: Выполнены все тесты из методики, команда оповещена о найденной уязвимости.

‼ Проблема: Не был запущен дополнительный тест для детализации утечки памяти в этой же итерации тестирования.

Решение: Использовать дополнительные тесты для найденных проблем, по возможности в этой же итерации тестирования.

Слайд 14 из 19

Page 15: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Проведение тестирования

«Страховка» мониторинга10-й час 20-ти часового теста и мониторинг отключился…

# Ситуация: В ходе тестирования произошел кратковременный сбой в работе сети.

‼ Проблема: Отключился мониторинг аппаратной загрузки серверов. Решение: Необходимо «страховать» мониторинг фоновыми

средствами и запасными вариантами.

Слайд 15 из 19

Page 16: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Подготовка отчета

Детализации отчетов200 графиков, 400 страниц. А хотели увидеть только выводы.

# Ситуация: Был составлен подробный отчет на 200 страниц с множеством графиков.

‼ Проблема: Требовался краткий отчет, приведенная информация оказалась непонятна Заказчику.

Решение: Следует разделять детализацию отчета на Предварительный, Бизнес-отчет и Большой отчет.

Слайд 16 из 19

Page 17: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Подготовка отчета

Представление графиковКорреляция количества пчел с объемом меда.

# Ситуация: Отчет прошел 15 итераций согласования в течение 2-х месяцев.

‼ Проблема: Требовались различные сравнительные графики результатов теста друг с другом.

Решение: Изначально приводить некоторые сравнительные графики, основные — с хитами в секунду и количеством ошибок.

Слайд 17 из 19

Page 18: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Заключение

Сборник рекомендаций

Инициация Составлять матрицу участников

Выбирать ключевой функционал

Подготовка методики НТ

Осторожнее с еще неразработанным функционалом

Подробно описывать мониторинг

Счетчики мониторинга выбирать вместе с командой

Особое внимание критериям времени отклика операций

Подготовка СНТ

Учитывать роли и логины пользователей

Фиксировать версию Системы

Проведение тестирования

Проверять тесты предварительными запусками

Использовать отклонения от методики при необходимости

«Страховать» мониторинг

Подготовка отчета

Готовить отчеты с разной детализацией

Приводить сравнительные графики показателей

Слайд 18 из 19

Page 19: Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать

Заключение

Спасибо за внимание!

Слайд 19 из 19

[email protected]

nagruzka.blogspot.ru