Рубрика «jmeter»

11 февраля состоялся релиз новой мажорной версии 4.0 Apache JMeter. Поскольку мы используем этот инструмент для нагрузочного тестирования на многих проектах, мы не могли оставить данное событие без внимания.

Предыдущий мажорный релиз (версия 3.0) был выпущен чуть меньше двух лет назад (для сравнения, версия 2.0 вышла аж в 2004-м!). Также за последние 2 года было выпущено несколько минорных релизов (версии 3.1-3.3). Это показывает нам, как JMeter развивается, чтобы шагать в ногу с новыми технологиями и соответствовать нуждам разработчиков.

Похоже, что в новой версии JMeter акцент прежде всего сделан на улучшении пользовательского интерфейса (UX). Процесс навигации и создания тестов стал проще, элементы — дружественней и удобней, а система оповещения пользователя о проблемах с тестами переработана.

JMeter 4.0. Что нового? - 1

Под катом самые важные изменения в JMeter 4.0, о которых вам нужно знать.
Читать полностью »

Привет!

Я работаю системным администратором, совмещая это дело с организацией и проведением нагрузочного тестирования для различных проектов (как игровых, так и не очень). Так уж получилось, что нагрузкой занимается только один человек (это я).

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

Сам процесс нагрузочного тестирования в своём сознании я делю на несколько этапов:

Нагрузочное тестирование, история автоматизации процесса - 1
Читать полностью »

Пару слов для начала

Итак, данный мануал подойдет для тех, кто ищет универсальный инструментарий для тестинга большого пула систем и решения большинства задач по нагрузочному тестированию. Статья рассчитана на новичков в этом деле, поэтому постараюсь максимально детализировать и упрощать процесс. Коротко обсудим каждый из элементов в нашей связке и перейдем к их первичной установке и настройке:

  1. Apache JMeter – инструмент для нагрузочного тестирования, который способен проводить тесты для JDBC-соединений, FTP, LDAP, SOAP, JMS, POP3, IMAP, HTTP и TCP из коробки и еще множество других протоколов и решений, используя различные плагины.
  2. Yandex.Tank – это облачный инструмент для нагрузочного тестирования, использует различные генераторы нагрузки, в том числе и JMeter.
  3. Yandex.OverLoad – сервис для удобного мониторинга и анализа серверов под нагрузкой.

Читать полностью »

image
Пару недель назад, я решил взять простейший пример HTTP сервера на Go и измерить его производительность. Потом я смело взял Phoenix, прогнал на тех же тестах, и расстроился. Результаты были не в пользу Elixir/Erlang (45133 RPS у Go и всего 3065 RPS у Phoenix). Но Phoenix — это тяжело. Надо что-то хотя бы примерно равное по простоте и логике разработки тому, что есть на Go: когда есть путь — "/" и handler для него. Логичной аналогией мне показалось решение cowboy + plug, где у нас есть Router, который так же ловит "/" и отвечает на него. Результаты убили — Elixir/Erlang опять оказался медленнее:

Golang
sea@sea:~/go$ wrk -t10 -c100 -d10s http://127.0.0.1:4000/
...
  452793 requests in 10.03s, 58.30MB read
Requests/sec:  45133.28
Transfer/sec:      5.81MB

elixir cowboy plug
sea@sea:~/http_test$ wrk -t10 -c100 -d10s http://127.0.0.1:4000/
...
  184703 requests in 10.02s, 28.57MB read
Requests/sec:  18441.79
Transfer/sec:      2.85MB

Как жить дальше? Две недели я не спал и не ел (почти). Все, во что я верил все эти годы: совершенство vm erlang, ФП, зеленые процессы, было растоптано разорвано, сожжено и пущено по ветру. Немного отойдя от шока, успокоившись, и подтерев сопли я решил разобаться, в чем дело.

Читать полностью »

Автоматизация нагрузочного тестирования: связка Jmeter + TeamCity + Grafana - 1

Изображение: Flickr

В нашем блоге на Хабре мы продолжаем рассказывать о построении DevOps-культуры в компании — например, в одном из последних топиков мы описывали то, какие задачи решаем с помощью системы SaltStack. Сегодня речь пойдет о другой интересной теме — автоматизации нагрузочного тестирования с помощью связки нескольких готовых инструментов.Читать полностью »

Однажды встретились JMeter и незнакомка… - 1
Кадр из фильма «Дом у озера». Встреча (www.kinopoisk.ru)

Джим ещё не знал, как подойти к ней, с чего начать разговор и на каком языке его вести. Но он видел многое, владел языками и имел в рукаве не один козырь. И будучи уверенным в помощи верных друзей (это мы с вами) и забыв про сомнения, шёл на встречу судьбе.

Ниже рассказ о том, как Джим завоёвывал снова и снова сердце незнакомой системы. Не подумайте, что незнакомок было несколько. Она была одна, единственная, но такая разная, и от того истории будут следовать одна за другой.
Читать полностью »

TailSampler — паралельная отправка GET-запросов в Apache.JMeter - 1
 

1. Назначение плагина «HTTP Request Tail»

Плагин упрощает загрузку встроенных ресурсов, позволяет параллельно выполнять указанные GET-запросы. Делая тест максимально близким к работе браузера по составу загружаемых ресурсов и по способу загрузки этих ресурсов.

TailSampler выручает если нужно:

  • выполнить группу GET-запросов паралельно;
  • выполнить 1000 GET-запросов, не создавая 1000 компонентов HTTP Request;
  • протестировать сайт, активно использующий AJAX, Adobe Flash, Adobe AIR, SilverLigth, ...

Читать полностью »

Среднее качество полноты извлечения ссылок на встроенные ресурсы html-парсерами Apache.JMeter
Среднее качество работы парсеров (для семи сайтов)

Предлагаю:

  • посчитать среднее качество полноты извлечения ссылок на встроенные ресурсы html-парсерами Apache.JMeter;
  • проверить правда ли извлечение ссылок в Apache.JMeter 3.0 стало более полным;
  • испытать в деле плагин CsvLogWriter.

Как гласит народная мудрость: Верить верь, но…
Читать полностью »

Введение

Наверняка каждый, кто пользовался стандартными листенерами в JMeter, сталкивался со следующими ограничениями:

  • стандартные листенеры не позволяют получить подробную информацию по всем запросам, прописанным в тест плане;
  • стандартные листенеры выводят информацию в XML — формате, что осложняет дальнейший анализ логов средствами Excel и IPython.

Чтобы обойти данные ограничения, было принято решение переработать формирование лог-файлов с помощью нового плагина CsvLogWriter.
Читать полностью »

В данной статье речь пойдёт об опыте автоматизации функционального и нагрузочного тестирования API протокола RTLSCP. Серверная часть системы локального позиционирования RealTrac состоит из основного (core) сервера, который связывается с устройствами по протоколу INCP (InterNanoCom Protocol) и сервера приложений (appserver). Сервер приложений общается с внешними клиентами и основным сервером по протоколу RTLSCP (Real Track Location System Communication Protocol). Клиенты также могут напрямую обращаться к основному серверу по RTLSCP.Читать полностью »