Repolode
gatling

gatling/gatling

Инструмент с открытым исходным кодом для нагрузочного тестирования: сценарии тестов производительности пишут на Java, Kotlin, Scala, JavaScript или TypeScript.

Open source альтернатива:LoadRunnerJMeter

Звёзды
6,959
Форки
1,210
Открытые issues
18
Последний коммит
позавчера

Что это?

Gatling — инструмент для нагрузочного тестирования, в котором тесты описывают как код. Симуляции можно писать на Java, Kotlin, Scala, JavaScript или TypeScript, запускать локально или в CI с помощью плагинов для Maven, Gradle, sbt или npm, а затем просматривать HTML-отчёт с перцентилями времени ответа, пропускной способностью и ошибками для каждого запроса. Проверки могут завершить сборку с ошибкой, если превышен заданный порог времени ответа или числа ошибок.

Виртуальные пользователи работают на неблокирующем движке на базе Netty, а не в отдельных потоках операционной системы, поэтому одна машина способна создавать значительную нагрузку. Community Edition под лицензией Apache 2.0 без ограничений поддерживает HTTP/1.1, HTTP/2, WebSocket, Server-Sent Events и JMS. gRPC, MQTT и GraphQL доступны по отдельной лицензии на компоненты; в бесплатном тарифе действуют ограничения в 5 одновременных пользователей и 5 минут на тест.

В проект также входят рекордер, который преобразует сеансы браузера или HAR-файлы в симуляции, фидеры для CSV, JSON и баз данных, а также модели нагрузки с открытой и закрытой интенсивностью. Платная Enterprise Edition добавляет управляемые генераторы нагрузки, инструменты для совместной работы команд и дашборды с динамикой показателей.

Ключевые возможности

  • 01Пишите сценарии нагрузочных тестов на Java, Kotlin, Scala, JavaScript или TypeScript.
  • 02Запускайте тесты из Maven, Gradle, sbt или npm, в том числе в CI-пайплайнах.
  • 03Формируйте HTML-отчёты с перцентилями времени ответа, пропускной способностью и ошибками.
  • 04Завершайте сборки с ошибкой, если проверки выявляют превышение порогов времени ответа или частоты ошибок.
  • 05Поддержка HTTP/1.1, HTTP/2, WebSocket, Server-Sent Events и JMS в Community Edition.

Сценарии использования

  • Проверка времени ответа API перед релизом и блокировка регрессий в CI.
  • Симуляция тысяч одновременных пользователей веб-сервиса без большого парка генераторов нагрузки.
  • Запись сеанса браузера для создания основы реалистичного сценария нагрузочного тестирования.
  • Нагрузочное тестирование конечных точек WebSocket или Server-Sent Events вместе со стандартными HTTP API.

Быстрый старт

  1. 1

    Установите и запустите стартовый проект Maven (поместите симуляцию в src/test/java/example/).

    ./mvnw gatling:test

Что важно знать

  • Для gRPC, MQTT и GraphQL действует отдельная лицензия Enterprise Component License; в Community Edition ограничения составляют 5 одновременных пользователей и 5 минут на тест.
  • Kafka, AMQP, SFTP, FTP и JDBC используют сторонние плагины, которые поддерживает сообщество.

Темы

Частые вопросы

Что такое gatling?
Инструмент с открытым исходным кодом для нагрузочного тестирования: сценарии тестов производительности пишут на Java, Kotlin, Scala, JavaScript или TypeScript. Gatling — инструмент для нагрузочного тестирования, в котором тесты описывают как код. Симуляции можно писать на Java, Kotlin, Scala, JavaScript или TypeScript, запускать локально или в CI с помощью плагинов для Maven, Gradle, sbt или npm, а затем просматривать HTML-отчёт с перцентилями времени ответа, пропускной способностью и ошибками для каждого запроса. Проверки могут завершить сборку с ошибкой, если превышен заданный порог времени ответа или числа ошибок.
gatling можно использовать бесплатно? Какая у него лицензия?
gatling распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
gatling всё ещё поддерживается?
Активно поддерживается. Последний коммит в gatling — 5 нояб. 2026 г..
Для чего можно использовать gatling?
Проверка времени ответа API перед релизом и блокировка регрессий в CI. Симуляция тысяч одновременных пользователей веб-сервиса без большого парка генераторов нагрузки. Запись сеанса браузера для создания основы реалистичного сценария нагрузочного тестирования. Нагрузочное тестирование конечных точек WebSocket или Server-Sent Events вместе со стандартными HTTP API.
Как установить gatling?
Установите и запустите стартовый проект Maven (поместите симуляцию в src/test/java/example/).: ./mvnw gatling:test
Где скачать gatling?
Исходный код и инструкции по установке — на GitHub: https://github.com/gatling/gatling

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Приложение с открытым исходным кодом на Java для нагрузочного тестирования и оценки производительности веб-приложений и других сервисов.

9,6 тыс.+16 за неделю2,3 тыс.JavaApache-2.0Активно поддерживаетсяОбновлён позавчера

Инструмент с открытым исходным кодом для нагрузочного тестирования: сценарии для HTTP и других протоколов задаются обычным кодом на Python, а результаты отображаются в веб-интерфейсе.

28,3 тыс.+12 за неделю3,3 тыс.PythonMITАктивно поддерживаетсяОбновлён позавчера

Платформа с открытым исходным кодом для нагрузочного тестирования HTTP API, WebSocket, Socket.io, gRPC и сценариев в браузере через Playwright; масштабируется на AWS Lambda и Fargate.

9,1 тыс.+9 за неделю576TypeScriptMPL-2.0Активно поддерживаетсяОбновлён 18 дней назад