Установка jmeter windows 10

Ставим JAVA + JMeter

JAVA — это объектно-ориентированный язык программирования.

Для того, чтобы запустить приложение написанное на java, необходимо установить окружение: «Java Development Kit» или «Java Runtime Environment».

  • Java Development Pack (сокр. JDK) – комплект разработки приложений для работы с языком программирования java. Включает в себя: интерпретатор, облегченный интерпретатор jre, компилятор, отладчик, java библиотеки классов, программу сбора документации, диcассемблер, программу архивации и сжатия jar, программу просмотра апплетов и т.д…
  • Java SE Runtime Environment (сокр. JRE) – это java окружение для исполнения Java-приложений. jre входит в jdk.

Apache JMeter — инструмент для проведения нагрузочного тестирования, который способен проводить нагрузочные тесты для соединений: http, ftp, pop3, imap, ldap, soap, jms, jdbc и tcp.

В статье мы рассмотрим установку Java + Jmeter для: Windows, Linux (Ubuntu), Mac OS

Установка под Windows

Установка Java Development Pack (JDK)

2. Перезагружаем Windows.

3. Теперь нам необходимо добавить переменные окружения, если они не появились сами после перезагрузки операционной системы Windows.

Открываем: ПускНастройкиПанель управленияСистемаДополнительные параметрыДополнительно (вкладка)Переменные среды

4. Нажимаем на кнопку «Создать», заполняем имя переменной: JAVA_HOME , устанавливаем значение переменной, например: C:\Program Files\Java\jdk1.7.0_71

Значение переменной — путь куда был установлен JDK.

5. Добавляем в значение переменной окружения Path строку: ;%JAVA_HOME%bin

Устанавливаем JMeter в Windows

1. Скачиваем Apache JMeter: https://archive.apache.org/dist/jmeter/binaries/ и распаковываем. Кстати, переименовывать поддиректории JMeter — нежелательно.

2. Добавляем переменную окружения: JMETER_HOME и устанавливаем ей значение, например:

C:\Program Files (x86)\apache-jmete-2.9\

Значение окружение в нашем случае — каталог, в который был распакован JMeter.

3. Добавляем в значение переменной окружения Path строку: ;%JMETER_HOME%bin

Для запуска JMeter запускаем файлик jmeter.bat — C:\Program Files (x86)\apache-jmete-2.9\bin\jmeter.bat

Ubuntu

Устанавливаем java в Ubuntu

Обычно в Ubuntu JAVA установлена сразу, даже на виртуальной машине VirtualBox, но не всегда. Проверяем командой в терминале:

На скрине видно, что java не установлена, следовательно будем устанавливать.

1. Добавляем репозиторий, выполняем команду в терминале:

2. Обновляем информацию о пакетах:

3. Ставим Oracle Java 7 (наиболее стабильная на сегодняшний день):

Oracle Java 6

Oracle Java 8

Для подтверждения нажимаем «Д», затем «Enter».

В процессе установки, Вас попросят принять лицензионное соглашение компании Oracle. После чего начнется установка.

Очень забавно наблюдать, как в терминале происходит установка. Обожаю этот момент.

Теперь проверяем все ли сделали правильно, вводим команду в терминале:

Устанавливаем JMeter в Ubuntu

Выполняем команду в терминале:

Запускаем JMeter командой, как на скрине:

Устанавливаем Jmeter на Mac OS

Для того, чтобы установить Jmeter на Mac OS — есть несколько решений, я как всегда, выбрал для себя самое быстрое и самое изящное, с помощью — «Homebrew».

1. Открываем терминал

2. Проверяем установлена ли «Java (JDK)» на ПК, для этого в терминале вводим команду:

Если Java установлена, вы увидите вывод, как на рисунке ниже

Если Java JDK на Mac OS — не установлена, установите по ссылочке:

3. Устанавливаем «Homebrew». Homebrew — менеджер недостающих пакетов для OS X. Для установки достаточно ввести команду в терминале:

4. Устанавливаем Jmeter, вводим команду в терминале:

5. Запускаем Jmeter

Если остались вопросы, пишите в комментариях к статье. Подписывайтесь на обновления блога, чтобы не пропустить моё мнение по очередному вопросу.

Installing Apache JMeter on Windows 10

Sep 27, 2017 · 2 min read

This is the documentation for Apache JMeter installation on Windows 10.

  • This article was written on September 2017
  • Latest version of Apache JMeter was 3.3
  • Java 8 was required
  • My Windows 10 did not have any Java installed

Step 1: Install Java 8

Download latest Java 8 from Oracle website. You will need to have Oracle account for downloading Java.

Run the Java installer package.

Verify installed Java version by running this command on Command Prompt.

Читайте также:  Whatsapp для ноутбук windows 10

Step 2: Download Apache JMeter

You can download the latest version of Apache JMeter from http://jmeter.apache.org/download_jmeter.cgi

Download the Binaries zip file.

Step 3: Extract Apache JMeter

Find the downloaded zip file and extract it to your desired directory.

For example, I extract the apache-jmeter-3.3.zip to C:\tole\.

This is the snapshot of the extracted directory.

Now go to / bin folder. You will find jmeter.bat.

Do u ble click on that file. The Apache JMeter GUI will be opened. You can create a shortcut for it on your desktop too.

On the next article, I will show how to use Apache JMeter.

Установка и настройка Apache.JMeter

Содержание

В текущей статье описан простой быстрый способ настройки Apache.JMeter: скачать, распаковать, настроить.

Для каждодневного использования, более профессионального, рекомендую автоматизировать скачивание и настройку Apache.JMeter с использованием Apache Maven.

1. Установка Apache.JMeter

Дистрибутив JMeter берётся по ссылке со страницы Download Releases.

Скачиваются два файла:

  1. apache-jmeter-5.0.zip (zip)
  2. apache-jmeter-5.0.zip.asc (pgp)

Zip-файл скачивается с ближайшего зеркала, а подпись скачивается с сервера Apache.

Можно оба файла скачать с сервера Apache, тогда проверка подписи особо не нужна. Также с сервера Apache берётся дистрибутив прежних версий, например, версии 3.1:

Архив нужно распаковать, например, в каталог:

  • D:\tools\apache-jmeter-5.0\

Перед запуском можно проверить целостность скачанного архива, а также установить java нужной версии.

Назначение каталогов и файлов:

  • bin — исполняемые файлы Apache.JMeter
    • ApacheJMeter.jar — java-сборка Apache.JMeter
    • heapdump.cmd, heapdump.sh
    • jmeter.bat, jmeter.sh, jmeter
    • jmeter-n.cmd
  • docs — документация
  • extras — дополнительные скрипты и утилиты
  • lib — библиотеки
  • licenses — лицензии
  • printable_docs — документация
  • LICENSE — лицензия Apache 2.0 на Apache.JMeter (перевод, описание)
  • NOTICE — примечание
  • README.md — описание, требования, инструкция по установке и сборке

1.1. Проверка целостности скачанного архива (опционально)

Удобно использовать консоль git-клиента в Windows, так как по умолчанию в MinGW есть утилита gpg для проверки корректности подписи

  1. Проверить pgp-подпись с помощью утилиты gpg.
  2. Если RSA ключ не был найден, то
    1. скачать указанный ключ с сервера pgpkeys.mit.edu с помощью утилиты gpg.
    2. проверить pgp-подпись с помощью утилиты gpg снова.

Если подпись корректна, то будет видна строчка «Good signature».

1.2. Установка Java

Выдержка из файла README.md гласит, что нужна Java 8:

The following requirements exist for running Apache JMeter:

A fully compliant Java 8 Runtime Environment is required for Apache JMeter to execute. A JDK with keytool utility is better suited for Recording HTTPS websites. Java 9 is not yet supported as of version 3.3.

И рекомендуется установить JDK, а не просто JRE.

Утилита keytool нужна, чтобы Apache.JMeter мог перехватывать и расшифровывать трафик по протоколу HTTPS, работая в режиме прокси.

Рекомендация, что нужно именно JDK сомнительная, так как в JRE тоже есть утилита keytool:

Считаю, что требование JDK для работы keytool — ошибка Apache.JMeter, которая уже исправлена, но в документации ещё не отражена:

Java (JRE) скачивается с сайта:

Java (JDK), Java SE Development Kit 8, скачивается с сайта:

На текущий момент, актуальная версия 8 Update 192.

2. Запуск

2.1. Первый запуск JMeter в Windows 7

Для запуска JMeter в графическом режиме используются скрипты:

  • bin
    • jmeter.bat — для Windows
    • jmeter.sh — для Linux

После первого запуска Apache.JMeter GUI в Windows 7 вероятно вы увидите предупреждение и затем ошибку:

На самом деле всё в порядке. По какой-то причине каталог C:\Windows\system32\ в Windows 7 — Windows 10 пропал из переменной окружения PATH . Всегда там был и с одним из обновлений пропал, или какая-то неумелая программа его удалила оттуда.

Установка jmeter windows 10

Поскольку JMeter является java-приложением для его работы требуется установить JRE или JDK (не ниже восьмой версии).

JRE (Java Runtime Environment) — минимально необходимая среда для запуска java-приложений, состоящая из виртуальной машины (Java Virtual Machine), библиотеки Java-классов и основных утилит.

JDK (Java Development Kit) — комплект разработчика приложений для Java. Включает в себя JRE, компилятор Java (javac) и ряд дополнительных утилит.

Несмотря на то, что для работы JMeter достаточно наличия JRE, рекомендуется устанавливать JDK. Это даст возможность в дальнейшем, при необходимости, вносить изменения в исходный код приложения или разрабатывать собственные плагины.

Скачайте JDK версии 8.231 или новее и установите его, следуя инструкциям инсталлятора.

Проверить корректность установки можно посредством ввода в командную строку `java -version`:

Установка JMeter

Скачайте JMeter версии 5.2.1 или новее и распакуйте архив в удобное для вас место.

Для запуска приложения в GUI-режиме следует использовать jmeter.bat в папке bin.

Читайте также:  Ssh ������ ��� ������

Установка Plugins Manager

JMeter поддерживает расширение функциональности посредством плагинов. Для облегчения процесса их поиска и установки рекомендуется использовать Plugins Manager.

Скачайте Plugins Manager JAR и разместите его в папке lib/ext JMeter’а.

Доступ к менеджеру в GUI-режиме осуществляется через вкладку Options главного меню JMeter.

Список полезных и наиболее часто используемых плагинов вы можете найти на соответствующей странице библиотеки.

Ассоциирование файлов

Для открытия файлов сценариев JMeter (.jmx) можно использовать главное меню приложения (File Open / Open Recent) или перетаскивать требуемые файлы прямо в интерфейсное окно. Если же вы хотите иметь возможность открывать .jmx по двойному щелчку мыши из Windows, необходимо в свойствах файла (вкладка «общие») задать в качестве приложения по умолчанию jmeter-t.cmd или jmeterw.cmd (для запуска GUI без консоли).

Альтернативный способ — прописать ассоциации через cmd:

Приручаем JMeter

Сегодня я хочу рассказать о замечательном инструменте, название которого вынесено в заголовок статьи. Разумеется, моей целью не является написание подробного руководства по Apache JMeter. В своей статье я хочу лишь зафиксировать ряд, на мой взгляд, не очевидных моментов, с которыми мне пришлось столкнуться в своей повседневной работе. Я надеюсь, что моя статья будет полезна (сразу предупреждаю, картинок будет много).

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

  • Web — HTTP, HTTPS
  • SOAP / REST
  • FTP
  • Database via JDBC
  • LDAP
  • Message-oriented middleware (MOM) via JMS
  • Mail — SMTP(S), POP3(S) and IMAP(S)
  • MongoDB (NoSQL)
  • Native commands or shell scripts
  • TCP

Таким образом, если перед вами стоит какая-то задача автоматизации и всё, что вам требуется, перечислено в этом списке, определённо стоит подумать об использовании JMeter, перед тем как с головой погрузиться в программирование на любимом Perl, Python или Java. Возможно, такой подход позволит сэкономить очень много времени.

Установка

С этим всё просто:

  1. Устанавливаем Java (если она еще не установлена)
  2. Выкачиваем и распаковываем свежую сборку JMeter
  3. Устанавливаем переменную среды JMETER_BIN на каталог с исполняемыми файлами JMeter (только для Windows)
  4. Запускаем jmeter.bat или jmeter.sh (в зависимости от операционной системы) из каталога bin

Единственная проблема, с которой я столкнулся на Windows, связана с тем, что значение переменной JMETER_BIN должно завершаться символом прямого или обратного слэша. Подробности можно посмотреть в запускаемом скрипте. Чтение инструкции также не будет лишним.

Запись скрипта

Это, пожалуй, самая эффектная возможность JMeter. Она уже описывалась ранее, но я повторюсь, поскольку в той статье речь шла об уже немного устаревшей версии. JMeter можно запустить в режиме proxy, таким образом, чтобы весь HTTP-трафик проходил через него. Все подробности взаимодействия будут автоматически записываться в выбранную Thread Group или Recording Controller. Для добавления новых узлов в дерево, просто нажимаем на правую кнопку мыши и выбираем требуемый тип из выпадающего меню:

Thread Group, управляющая такими настройками как количество потоков, используемых для тестирования и количество запросов в тесте, находится в категории Treads (Users), а сам HTTP(S) Test Script Recorder в Non-Test Elements.

Я выделил на рисунке настройки, на которые следует обратить внимание. Порт возможно придётся изменить, если на 8080 уже что-то поднято. В сложных случаях, в Test Plan придётся добавить HTTP Cookie Manager и HTTP Authorization Manager. После нажатия кнопки Start, идём в настройки любимого браузера:

Взаимодействие с Яндекс, внезапно, оказывается очень непростым:

Полученные запросы (HTTP Request) вместе с их настройками (HTTP Header Manager) можно перенести в любое место скрипта, используя любимые всеми команды Copy&Paste (Drag&Drop тоже работает). Даже если вы твердо уверены в том, что происходит на вашем сайте, Script Recorder может быть очень полезен, для того чтобы узнать подробности. Кроме того, автоматическая генерация скриптов куда веселее чем вбивание их руками. Более подробно процесс записи скриптов описан в этой инструкции.

Переменные

Для чего-то мало-мальски серьёзного, нам потребуется возможность параметризации. Для примера, предположим, что нам требуется задать таймауты, в течение которых JMeter будет ожидать ответа сервера. Вбивать их заново в каждый HTTP Request, при любом изменении, было бы слишком утомительно. Заодно определим настройки HTTP Proxy (если он используется):

В поле Password забито значение $ , тут уж вам придётся поверить мне на слово. Сами настройки удобно держать в User Defined Variables (этот элемент можно найти в категории Config Element):

Читайте также:  Можно поставить линукс вместе с виндовс

Пустые значения переменных проблемой не являются. В соответствующие настройки будут подставлены пустые строки, как того и требуется, в случае если HTTP Proxy не используется. Можно пойти ещё дальше и действительно разместить все HTTP-настройки в одном месте:

Элемент HTTP Request Defaults, также как и User Defined Variables расположен в категории Config Element.

Отладка

Теперь, было бы неплохо видеть, что происходит при выполнении сценария. Различного вида визуализаторы размещаются в категории Listener. Нам понадобится View Results Tree. Добавим его и запустим сценарий на выполнение командой Run/Start (Ctrl+R). Можно видеть, что ответ сервера также бывает непростым:

Такая картина наблюдается, если адрес редиректит нас на другую страницу и с этим может быть связана одна проблема. Если мы попытаемся анализировать ответ сервера (как это делать я покажу ниже), нам будет доступен лишь последний ответ (той страницы на которую произошёл redirect). Если ответ с предыдущей страницы нам также интересен, автоматический redirect придётся отключить. За это отвечает настройка Follow Redirects элемента HTTP Request. Разобрав ответ, мы сможем получить адрес целевой страницы и выполнить повторный запрос вручную.

Есть ещё один элемент, крайне полезный для отладки сценариев. Он находится в категории Sampler и называется Debug Sampler. Каждый раз, когда до него доходит управление, он выводит текущие значения всех переменных. Добавим его в Thread Group и запустим сценарий ещё раз (для того, чтобы очистить вывод предыдущего запуска, удобно использовать комбинацию клавиш Ctrl+E):

Все переменные как на ладони. Удобно.

JDBC Request

Этот Sampler открывает нам доступ в любую базу данных, поддерживающую протокол JDBC. Для начала, добавим в Test Plan конфигурационный элемент с настройками подключения к серверу БД (JDBC Connection Configuration):

Помимо собственно настроек подключения к БД, здесь важно заполнить поле Variable Name. Это имя будет использоваться в JDBC Request (Sampler) для доступа к пулу сессий:

Если вам интересны результаты select-а, придётся заполнить Variable Names. Сам JMeter парсить SQL-запросы на предмет имён столбцов не умеет. Можно перечислять имена столбцов через запятую и пропускать столбцы, не давая им имени. Вставляем Debug Sampler и смотрим, что получилось:

Видим, что документация не врёт. Появились переменные urls_1 и urls_2 (количество строк, как и обещали, в urls_#). В этом месте, стоит соблюдать осторожность. Записи выбираются не по одной, а все сразу и прочитав >1000 строк можно легко отожрать слишком много памяти. Теперь, было бы неплохо обойти полученные адреса в цикле:

Да, именно вот так заковыристо. Набор переменных urls перебираем от 0 до $ и текущее значение помещаем в url. Сам ForEach Controller можно найти в категории Logic Controller. Внутри него создадим параметризованный HTTP Request. Запускаем, смотрим:

Регулярные выражения

Теперь, результаты обращений к Web-серверам хотелось бы проанализировать. Для этого, нам предоставлена вся мощь регулярных выражений. Regular Expression Extractor можно найти в Post Processors. Добавим его в HTTP Request и сконфигурируем:

Здесь, нас интересует только код ответа по HTTP (но, по иллюстрации видно, что можно обрабатывать и содержимое ответа). Будем извлекать цепочку цифр (Regular Expression) и помещать результат применения шаблона (Template) в переменную http_result (Reference Name):

Как и ожидалось, получаем 200. Заодно, можно видеть, каким образом осуществляется захват в переменные регулярным выражением.

Что-то там внутри

Теперь, допустим, что нас интересует время, в течение которого выполнялся HTTP-запрос. И интересует оно нас не просто для статистики, а мы его хотим как-то использовать в сценарии (например сложить в БД). С этой задачей поможет справиться BeanShell. Конкретно, мы используем его Pre — и PostProcessor-ы.

В первом будем получать timestamp:

А во втором, получать с его помощью временную задержку:

В общем, это тоже работает:

Но здесь следует сделать важное замечание. Поскольку, в настоящий момент, я занимаюсь не нагрузочным тестированием, производительность этой конструкции для меня не очень важна. Если в вашем случае это не так, стоит ознакомиться со следующей статьёй.

Запуск

Если бы не было этой возможности, не стоило бы и весь этот разговор заводить. В случае нагрузочного тестирования, сценарий можно запускать из GUI, нет проблем. Но если нас интересует автоматизация, необходимо уметь запускать его молча (например по cron-у). Разумеется такая возможность тоже есть:

Сохраняем сценарий в файл с расширением jmx (внутри это XML) и запускаем эту команду. Сценарий отрабатывает без запуска GUI и заодно пишет результаты своей работы в лог. Всё просто и удобно.

Оцените статью