Jmeter против Gatling для тестирования производительности 2020 - PullRequest
0 голосов
/ 05 мая 2020

Я пытаюсь сравнить Gatling с Jmeter для тестирования производительности.

Мои требования:

  1. Мне нужна совместимость с CI / CD и автоматизацией.
  2. Производительность должна быть хорошей (я знаю, что Gatling немного лучше справляется с перегрузкой ресурсов).
  3. Dynami c -> то есть возможность запустить тест, изменить некоторые настройки в среде, а затем запустить тест снова.
  4. Использовать в облаке (мне кажется, что из-за того, что Gatling лучше по производительности, он был бы лучше для облака ... Но я не знаю, действительно ли здесь есть большая разница).
  5. Я тестирую систему Monolith , поэтому я не смогу также разделить систему (как микросервисы), а использование моков (mockito) будет сложнее иметь возможность получить более точную производительность, например, для запроса конечной точки, исключая время базы данных и т. д. c. Таким образом, это означает, что тест производительности, который, как я полагаю, я буду проводить, является скорее стресс-тестом и тестированием общей производительности системы, а не измерением отдельных частей системы.

Любая помощь была бы замечательной. Я спрашиваю, потому что большая часть информации кажется устаревшей по этому поводу ...

Изменить: я не боюсь, что Гатлинг будет запрограммирован на Scala и gatling dsl. Я больше боюсь ограничений и подводных камней, которых я не вижу!

Ответы [ 2 ]

2 голосов
/ 05 мая 2020

Заявление об ограничении ответственности: здесь создатель Gatling

ИМХО, первым критерием на самом деле должно быть: с каким инструментом вам удобнее всего?

Gatling ориентирован на код, прекрасно интегрируется с IDE, такими как IntelliJ или vscode. JMeter ориентирован на GUI.

Если вы разбираетесь в программировании, вы можете предпочесть Gatling, чтобы использовать обычную среду разработки и методы (рефакторинг, экспертная оценка и т. Д. c). Вам не нужно быть экспертом в области разработки, вы в основном будете использовать DSL Gatling (обязательно прочтите официальную документацию и go в руководствах).

На Напротив, если вы не умеете кодировать (и не хотите изучать основы, такие как методы, параметры, IDE), вам не следует использовать go с Gatling и go с JMeter.

Примечание. Если вы ищете облачную платформу для Gatling, мы предлагаем Gatling FrontLine .

0 голосов
/ 05 мая 2020

Оба инструмента поддерживают все ваши требования, так что это скорее вопрос личных предпочтений / опыта.

  1. Gatling поддерживает меньше протоколов (ограничено HTTP , JMS и MQTT ), чем JMeter , однако можно расширить оба и добавить поддержку протокола (ов) по вашему выбору.
  2. Вам потребуется дополнительная ручная работа, чтобы настроить распределенное тестирование Gatling в то время как JMeter автоматически агрегирует данные от ведомых устройств в распределенном режиме
  3. Gatling более удобен для CI, поскольку предполагает написание тестов в Scala, в то время как поддерживаемый способ создания теста JMeter использует GUI и План тестирования JMeter - это файл XML, и добавление одного тестового элемента приведет к появлению 10+ строк кода XML, который не очень удобочитаем.
...