Стенд для нагрузочного тестирования на Testcontainers
Опыт работы с тестовыми сценариями достиг высокого уровня удобства благодаря использованию Testcontainers. С помощью Testcontainers появилась возможность удобно создавать окружение для интеграционных тестов (см. статью Изоляция в тестах с Кафкой ). Мы можем поднимать контейнеры с различными версиями разных баз данных, брокеров сообщений и т.д. При фокусе на интеграционные тесты, Testcontainers становится незаменимым компонентом среды выполнения. Нагрузочное тестирование, хотя и встречается реже, чем функциональное, может быть более увлекательным с технической точки зрения и с точки зрения инженерного любопытства. Интересно наблюдать за графиками и исследовать детали работы конкретного сервиса. Это редкая, но для меня более захватывающая задача. Цель данной статьи — продемонстрировать подход к созданию стенда для нагрузочного тестирования в том виде, в котором пишутся обычные интеграционные тесты: в форме spock-тестов с использованием Testcontainers в среде Gradle проекта. В качестве утилит нагрузочного тестирования используются Gatling, WRK и Yandex.Tank.
https://habr.com/ru/articles/819589/
#java #groovy #spock_framework #gatling #wrk #yandextank