
Лекции / Лекция 6. Нагрузочное тестирование
.pdfНагрузочное тестирование
Анализ результатов нагрузочного тестирования
На данном этапе осуществляются:
-подсчет времени выполнения запроса (минимальное, максимальное, среднее)
-подсчет количества выполненных запросов и процент ошибок
-определение пропускной способности
-определение значений потребления ресурсов центрального процессора
-определение значений потребления оперативной памяти
-определение значений потребления сетевых ресурсов
-определение значений работы с дисковой подсистемой
Не всегда имеется возможность выполнить полный мониторинг функционирования ПО под нагрузкой и выявить трудность. Пример – использование Java отрицательно сказывается на устойчивости функционирования ПО в условиях исполнения программного кода виртуальной машиной Java, которая, помимо непосредственного исполнения программного кода по обработке входящих и исходящих потоков сообщений, в определенные, известные только ей, моменты времени, затрачивает существенный вычислительный ресурс на освобождение уже не используемой оперативной памяти (garbage collector), что фундаментально не позволяет выполнить балансировку и планирование нагрузки в основной вычислительной системе и является весьма существенной платой за удобство разработки программного обеспечения, заключающееся в отсутствии необходимости обязательного освобождения памяти после её использования.
Нагрузочное тестирование
Анализ результатов нагрузочного тестирования
Следует отметить, что не всегда выявляемая трудность находится на стороне тестируемого ПО. В некоторых случаях может быть ситуация, в которой т.н. "узким местом" может являться, например, не тестируемое ПО, не общее ПО ОС, а производительность дисковой подсистемы или, точнее, например, настройки raid-контроллера, в которых задано, например, распределение 25% / 75% между записью / чтением, а сервер в большинстве случаев выполняет именно запись, на которую, в связи с таким распределением, не хватает требуемой производительности. Другим примером может являться особенность работы тестируемого ПО, например, web-сервер осуществляет хеширование файла только после первого обращения к данному файлу, что выражается в сравнительно медленной передаче файла при первом обращении, но при втором и последующих обращениях скорость передачи существенно возрастает.
В связи с вышеизложенным, интерпретацию результатов нагрузочного тестирования ПО следует осуществлять очень аккуратно, чтобы выявить ошибки и/или трудности в тестируемом ПО и/или именно то т.н. "узкое место", которое нуждается в модернизации и/или исправлении.
Нагрузочное тестирование
Формирование отчета по проведенному нагрузочному тестированию
Формирование отчета осуществляется в соответствии с требованиями Программы и методики испытаний. В некоторых случаях форму отчета включают в приложение к ПМИ.
Наиболее частые ошибки при тестировании и интерпретации результатов теста:
-возможен отказ в обслуживании тестируемой системы (DDOS)
-проводится не корректное нагрузочное тестирование и получается ошибочное заключение по результатам тестирования
-нет четкой цели, для чего нужно тестирование данного ПО
-формируется большое количество результатов и не всегда они верно интерпретируются
-выполняется неправильное представление результатов нагрузочного тестирования Заказчику
Таким образом, при проведении нагрузочного тестирования проверяется не только и не столько само ПО, сколько совместная работа всего комплекса технических и программных средств, аппаратной части сервера, веб-сервера, программного ядра (engine) и других компонентов общего и специального ПО, позвляющее выявить т.н. "узкие места", которые нуждаются в модернизации с целью повышения производительности системы в целом.
_
Литература
1.Орлов С.А. Технологии разработки программного обеспечения. Учебник для вузов. 4-е издание. Стандарт третьего поколения
[Электронный ресурс] / С.А.Орлов, Б.Я. Цилькер. - СПб. : Питер, 2012. - 608 с.
2.Котляров В.П. Основы тестирования программного обеспечения
[Электронный ресурс] : учебное пособие / Котляров В. П., -М.: ИнтернетУниверситет Информационных Технологий (ИНТУТ), 2016. - 334 с.
3.Липаев В.В. Тестирование компонентов и комплексов программ [Электронный ресурс] : Учебник / Липаев В.В. - Воронеж: Воронежский государственный архитектурностроительный университет, ЭБС АСВ, 2014. - 171 c.