Download - 9.1 resource analysis.templ
![Page 1: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/1.jpg)
Нефункциональное тестирование:
Анализ использования ресурсов
Светлана Зиннатова
![Page 2: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/2.jpg)
Ресурсы Пользователь:
• Время:
– Время отклика системы
– Время выполнения
операции (функции,
запроса)
2
Система:
• Степень загрузки
процессора
– системная загрузка
– пользовательская загрузка
– ожидание окончания
операции ввода-вывода
– Бездействие
• Оперативная память
• Дисковая подсистема и
операции ввода-вывода
• Загруженность сети
![Page 3: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/3.jpg)
Аспекты качества
С точки зрения пользователя
Производительность (Performance)
степень, с которой система или компонент
выполняет заложенные в нее функции в
установленных рамках
на время обработки
на пропускную способность
![Page 4: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/4.jpg)
Аспекты качества
способность использования программным
продуктом соответствующего количества ресурсов
определенного типа (например, объема
оперативной памяти и памяти второго уровня,
размера временных файлов и т.д.) во время работы
в установленных условиях.
С точки зрения системы
Использование ресурсов
(resource utilization)
![Page 5: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/5.jpg)
Аспекты качества
способность системы обеспечивать необходимую
производительность, относительно количества
ресурсов, используемых при установленных условиях.
Эффективность (efficiency)
![Page 6: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/6.jpg)
Основной подход Предвари-тельный анализ,
пстановка задачи
Настройка стенда реализации
Проведение испытаний
Анализ результатов
Подготовка отчетов
![Page 7: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/7.jpg)
Предварительный анализ
• Определение функционального разрез:
– Типичные задачи
– Вероятность их возникновения
• Определение профилей (ожидаемых):
– Производительности
– Эффективности
– Использования ресурсов
![Page 8: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/8.jpg)
Настройка стенда реализации
• Оборудование
• Операционная система
• Тестируемая система
• Окружение
• Мониторинг Принципы:
• Максимальное приближение к
реальной жизни
• Изоляция от внешних влияний
• Учет влияния отклонений
![Page 9: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/9.jpg)
Проведение испытаний
• Последовательное
выполнение операций в
соответствии с
функциональным
срезом и профилями
производительности/
эффективности
• Параллельная
фиксация метрик:
– Время отклика
– Ресурсы
9
![Page 10: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/10.jpg)
Мониторинг ресурсов
• MS Task Manager
10
![Page 11: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/11.jpg)
Мониторинг ресурсов
• MS Performance – Для запуска системного монитора также
достаточно ввести perfmon из Start (Пуск)/Run (Выполнить)
![Page 12: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/12.jpg)
Анализ результатов
• Изучение статистики
• Поиск узкого места – bottle-neck
• Рекомендации к улучшению
![Page 13: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/13.jpg)
Упражнение 1
• MS Word
– Постройте функциональный разрез
(достаточно 3-5 операций)
– Попробуйте определить профиль
производительности и использования
ресурсов
– Выберите средний документ и проведите
на нем испытания и зафиксируйте метрики
13
![Page 14: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/14.jpg)
Особые ситуации
14
![Page 15: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/15.jpg)
Объемное тестирование
• тестирование, при котором система
испытывается на больших объемах
данных.
![Page 16: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/16.jpg)
Упражнение 2
• MS Word
– Повторите упражнение 1 на примере очень
большого документа (например книга или
научная диссертация), попробуйте
• Выполнить операции в середине документа,
• Найти что-то в документе
• Выделить весь текст
– Что изменилось?
16
![Page 17: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/17.jpg)
Нефункциональное тестирование:
Анализ использования ресурсов
Светлана Зиннатова
![Page 18: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/18.jpg)
Распределенные системы
18
![Page 19: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/19.jpg)
Нагрузочное тестирование
• оценка поведения компонента или системы при возрастающей нагрузке:
– Количество параллельных пользователей
– Количество параллельных операций
![Page 20: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/20.jpg)
• Номинальная
• Минимальная
• Максимальная
Нагрузочное тестирование
![Page 21: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/21.jpg)
Stress testing
вид тестирования, оценивающий систему или компонент
на граничных значениях рабочих нагрузок или за их
пределами
![Page 22: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/22.jpg)
Межные характеристики • Надежность (reliability)
– способность программного продукта функционировать при заданных условиях на протяжении определенного периода времени, или для определенного количества операций. Также применяются термины soak testing, endurance testing и т.д.
• Тестирование надежности – процесс тестирования,
исследующий надежность программного продукта.
![Page 23: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/23.jpg)
Смежные характеристики • Масштабируемость (scalability)
– способность программного продукта к модернизации с целью удовлетворения возрастающей нагрузки.
• Тестирование масштабируемости (scalability testing) – тестирование с целью
оценить масштабируемость программного продукта.
![Page 24: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/24.jpg)
Методика проведения
Предварительный анализ и постановка
задачи
Настройка стенда
реализации
Разработка типовых
сценариев и
реализация модели нагрузки
Проведение испытаний
Анализ результатов
Подготовка отчетов
![Page 25: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/25.jpg)
Предварительный анализ
• Определение функционального разрез:
– Типичные задачи
– Вероятность их возникновения
• Определение профилей (ожидаемых):
– Производительности
– Эффективности
– Использования ресурсов
– Нагрузки
![Page 26: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/26.jpg)
Профиль нагрузки
• Количество пользователей:
– Минимальная – X пользователей
– Номинальная – Y пользователей
– Максимальная – Z пользователей
– (за)Предельная
• Соотношение пользователей разного
профиля (по выполняемым операциям):
– Сценарий пользователя 1 - XX%
– Сценарий пользователя 2 - YY%
– Сценарий пользователя N - ZZ%
26
![Page 27: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/27.jpg)
Настройка стенда реализации • Оборудование
• Операционная система
• Тестируемая система
• Окружение
• Инструменты нагрузочного
тестирования
• Мониторинг Принципы:
• Максимальное приближение к
реальной жизни
• Изоляция от внешних влияний
• Учет влияния отклонений
![Page 28: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/28.jpg)
Инструменты
• Apache Jmeter (http://jakarta.apache.org/jmeter/)
• Open Systems Testing Architecture (OpenSTA, http://www.opensta.org/)
• WAPT – Web Application Testing (http://www.loadtestingtool.com)
• HP LoadRunner (www.mercury.com)
• IBM Rational Performance Tester (http://www.interface.ru/fset.asp?Url=/rational/PerfomTest.htm)
![Page 29: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/29.jpg)
Мониторинг ресурсов
• Обычный
• Агентный
• Встроенный
– в том числе время отклика системы
– количество возникающих ошибок
![Page 30: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/30.jpg)
Мониторинг производительности
• OS Unix – sar -
http://www.opennet.ru/man.shtml?topic=sar&russian=0&category=&submit=%F0%CF%CB%C1%DA%C1%D4%D8+man
– http://www.ibm.com/developerworks/ru/library/au-unix-perfmonsar/index.html
– top - http://www.opennet.ru/man.shtml?topic=top&russian=0&category=&submit=%F0%CF%CB%C1%DA%C1%D4%D8+man
– vmstat – http://www.opennet.ru/man.shtml?topic=vmstat&russian=0&category=&submit=%F0%CF%CB%C1%DA%C1%D4%D8+man
![Page 31: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/31.jpg)
Разработка типовых сценариев и
реализация модели нагрузки
• Запись VU-скриптов
• Подготовка данных
• Проектирование сценариев
![Page 32: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/32.jpg)
Проектирование сценария
нагрузки – Варианты запуска:
• Все одновременно
• Постепенно по одному
• По расписанию
• Хаотично партиями
– Варианты прогона:
• Все фремя фиксированная нагрузка
(performance/efficiency)
• Все время возрастающая нагрузка (stress)
• Переменная нагрузка (reliability)
![Page 33: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/33.jpg)
Проведение испытаний
• Зафиксировать состояние системы
• Следить за состоянием системы между
тестами
• Предварительный прогон теста с
разными уровнями нагрузки (малыми)
• Прогон основных нагрузочных сценариев
• Фиксация метрик производительности,
использования ресурсов
![Page 34: 9.1 resource analysis.templ](https://reader034.vdocuments.pub/reader034/viewer/2022051610/549bda75ac7959d82a8b4599/html5/thumbnails/34.jpg)
Анализ результатов
• Изучение статистики
• Поиск узкого места – bottle-neck
• Рекомендации к улучшению