Перейти к содержимому

Введение в нагрузочное тестирование с использованием Locust и Python — Габриэль Бурс

SF Python

0:00 / 0:00

Введение в нагрузочное тестирование с использованием Locust и Python — Габриэль Бурс

30 901 просмотр · 7 л. назад
SF Python
19 тыс. подписчиков
30 901 просмотр · 7 л. назад
Этот доклад был представлен на PyBay2019 — 4-й ежегодной региональной конференции Python в районе залива Сан-Франциско. Более подробную информацию о PyBay можно найти на сайте pybay.com, а для получения дополнительной информации о докладе нажмите «ПОКАЗАТЬ БОЛЬШЕ». Описание Затрудняетесь с проблемами производительности в продакшене? Непонятные ошибки бэкенда сводят вас с ума? Выпустите на ваше веб-приложение целую армию Locust, чтобы навсегда устранить проблемы с производительностью! В этом докладе вы узнаете, как использовать Locust для нагрузочного тестирования RESTful-сервисов и многого другого. Аннотация Обзор: Locust — это библиотека Python с открытым исходным кодом, которую можно использовать для выявления узких мест в вашем коде, задействуя десятки, сотни или даже тысячи отдельных рабочих процессов. Используя Locust, мы можем имитировать непрерывный трафик, который веб-приложения испытывают в реальных условиях. Этот вид нагрузочного тестирования, как и любой другой инструмент в арсенале тестировщика, играет решающую роль в процессе создания надежного, стабильного и проверенного в боевых условиях программного обеспечения. Приходите на этот доклад, чтобы получить практическое, базовое введение в нагрузочное тестирование, написание файла locustfile.py и отладку проблем, возникающих при первой нагрузке приложения сотнями или даже тысячами запросов в минуту. Кроме того, мы рассмотрим способы максимально эффективного использования встроенных механизмов отчетности Locust и рандомизацию входящего трафика для более реалистичных сценариев тестирования. Наконец, я продемонстрирую распределенное нагрузочное тестирование с использованием нескольких серверов-агентов и контроллера. Так чего же вы ждете? Устройте катастрофу библейских масштабов и организуйте апокалипсис для вашего приложения… ради науки! Предупреждение: во время доклада допустимы плохие каламбуры и обилие аллитерации. План: Что такое нагрузочное тестирование и зачем оно нужно? Имитация пользователей Определение операционной мощности и точек отказа Знание последствий вашего кода! В чем разница между функциональным и нагрузочным тестированием? Идеальные результаты второстепенны Секрет успешного нагрузочного тестирования: вам не нужно, чтобы эти тесты прошли! Почему нагрузочное тестирование так важно при разработке программного обеспечения сегодня? Запуск приложений в масштабе и знание того, когда выделять ресурсы Корректное реагирование на сбои и отказоустойчивость ЛОМАЙТЕ ВСЁ. Написание вашего первого файла locustfile.py Определение набора задач Рандомизация задач и установка весов Последовательное выполнение задач Понимание результатов нагрузочного тестирования и отладка распространенных проблем Распределенное нагрузочное тестирование Использование архитектуры агент/контроллер для координации запросов Варианты мониторинга приложений в масштабе Краткое введение в тестирование приложений, не являющихся RESTful-сервисами Оригинальные слайды: https://drive.google.com/file/d/1AJmo... О докладчике Габриэль работает удаленно в стартапе в Сан-Франциско в качестве старшего инженера-программиста и в основном использует языки программирования JVM. Однако он давно поддерживает сообщество Python и с удовольствием пишет на Python везде, где это возможно. Спросите его о преимуществах и недостатках Java и Python и почему он считает, что легкие темы — действительно лучший выбор! Благодарность спонсорам Этот и другие видеоролики PyBay2019 созданы при поддержке нашего медиа-партнера AlphaVoice (https://www.alphavoice.io/)! #pybay #pybay2019 #python #python3 #gdb