Asked
1 year, 1 month ago
Viewed
482 times
I tried Jmetre.bat, java -jar ApacheJmeter.jar from the CMD as well as clicking the jmeter.bat file from the folder, but no luck getting the below error.
See the below screen shots for the Jmeter env variable set up. It used to work till V5.4.2
C:apache-jmeter-5.4.3bin>jmeter.bat
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3lib
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3libext
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3libjunit
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.ClassNotFoundException: org.apache.jmeter.JMeter
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.apache.jmeter.NewDriver.main(NewDriver.java:251)
JMeter home directory was detected as: C:apache-jmeter-5.4.3
C:apache-jmeter-5.4.3bin>java -jar ApacheJmeter.jar
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3lib
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3libext
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3libjunit
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.ClassNotFoundException: org.apache.jmeter.JMeter
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.apache.jmeter.NewDriver.main(NewDriver.java:251)
JMeter home directory was detected as: C:apache-jmeter-5.4.3
asked Jan 4, 2022 at 23:53
2
Asked
1 year, 1 month ago
Viewed
482 times
I tried Jmetre.bat, java -jar ApacheJmeter.jar from the CMD as well as clicking the jmeter.bat file from the folder, but no luck getting the below error.
See the below screen shots for the Jmeter env variable set up. It used to work till V5.4.2
C:apache-jmeter-5.4.3bin>jmeter.bat
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3lib
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3libext
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3libjunit
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.ClassNotFoundException: org.apache.jmeter.JMeter
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.apache.jmeter.NewDriver.main(NewDriver.java:251)
JMeter home directory was detected as: C:apache-jmeter-5.4.3
C:apache-jmeter-5.4.3bin>java -jar ApacheJmeter.jar
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3lib
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3libext
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.Throwable: Could not access C:apache-jmeter-5.4.3libjunit
at org.apache.jmeter.NewDriver.<clinit>(NewDriver.java:106)
java.lang.ClassNotFoundException: org.apache.jmeter.JMeter
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.apache.jmeter.NewDriver.main(NewDriver.java:251)
JMeter home directory was detected as: C:apache-jmeter-5.4.3
asked Jan 4, 2022 at 23:53
2
#1
Snap
- ФИО:Роман
- Город:Москва
Отправлено 08 сентября 2011 — 13:23
Имеется 64-битная Windows 7.
Скачал Jmeter, разархивировал, захожу в папку bin, запускаю jmeter.bat.
Если установлена 32-битная версия JDK(JRE) сообщение об ошибке такое:
«java.exe» не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
errorlevel=9009
При этом браузеры видят java.
Если поставить 64-битную java, то ошибка будет другой:
unable to access to jarfile ApacheJMeter.jar
errorlevel=1
В этом случае браузеры Jav’y не видят…
Запустить в итоге не получается. Кто-нибудь сталкивался с чем-то подобным?
-
0
- Наверх
#2
-=VoV=-
-=VoV=-
-
- Members
-
- 12 сообщений
Новый участник
Отправлено 08 сентября 2011 — 14:21
Если UAC включен, можно попробовать его отключить.
-
0
- Наверх
#3
Mad Cat
Mad Cat
- ФИО:Александр Балабанов
- Город:Киев
Отправлено 08 сентября 2011 — 14:39
Я бы рекомендовал проверить есть ли путь к java в PATH
-
0
- Наверх
#4
Future
Отправлено 09 сентября 2011 — 07:36
http://www.daniweb.c…a/threads/29365
Применительно не только к вашему случаю, а проблеме в целом. По сути это те же рекомендации, что и дал Вам Mad Cat.
А вообще по своему опыту делаю так:
1) Встретили ошибку и вам выдали код
2) Берем копируем код ошибки и вставляем в гугл
3) Фильтруем результаты и получаем решение проблемы.
-
0
- Наверх
#5
KRULIT
KRULIT
-
- Members
-
- 47 сообщений
Новый участник
- ФИО:Ковальчук Роман Львович
- Город:Киев
Отправлено 15 марта 2012 — 07:55
Аналогичная ситуация с 2008 Server, режими совместимости, гугл и пути PATH — не решили проблему, Snap удалось ли добиться положительного результата ?
-
0
- Наверх
#6
KRULIT
KRULIT
-
- Members
-
- 47 сообщений
Новый участник
- ФИО:Ковальчук Роман Львович
- Город:Киев
Отправлено 15 марта 2012 — 09:24
Вопрос решается редактированием файла jmeter.bat нужно указать путь к java например set JM_LAUNCH=»C:Program Files (x86)Javajdk1.6.0_25binjava.exe»
-
1
- Наверх
#7
Lemur
Lemur
- ФИО:Левиков Владимир Владимирович
Отправлено 16 марта 2012 — 05:31
У меня та же самая проблема.
в батнике прописал путь C:Program FilesJavajre6binjava.exe — к сожалению не помогло.
Что еще можно сделать.
Версия 2.6
-
0
- Наверх
#8
mo-ska
mo-ska
-
- Members
-
- 3 сообщений
Новый участник
- ФИО:Туева Виктория
Отправлено 28 июня 2012 — 04:43
Была аналогичная проблема с Jmeter на 2008 Server. Помогла статья http://automated-tes…er/announcement
Если кратко, установила Sun JDK.
Скачиваем установочный файл с http://www.oracle.co…ad-1501634.html
* jdk-6u31-windows-i586.exe для Win32
* jdk-6u31-windows-x64.exe для Win64
* для MacOs скачиваем Java как плагин отсюда http://support.apple.com/kb/DL1360
-
0
- Наверх
#9
peschenko
peschenko
-
- Members
-
- 3 сообщений
Новый участник
- ФИО:Пещенко Евгения
Отправлено 11 апреля 2013 — 07:04
Вопрос решается редактированием файла jmeter.bat нужно указать путь к java например set JM_LAUNCH=»C:Program Files (x86)Javajdk1.6.0_25binjava.exe»
Мне помогло. Изменила строку
if .%JM_LAUNCH% == . set JM_LAUNCH=java.exe
на
if .%JM_LAUNCH% == . set JM_LAUNCH=»c:Program Files (x86)Javabinjava.exe»
-
0
- Наверх
#10
masik
masik
-
- Members
-
- 19 сообщений
Новый участник
- Город:Заречный
Отправлено 23 мая 2013 — 11:07
У меня та же самая проблема.
в батнике прописал путь C:Program FilesJavajre6binjava.exe — к сожалению не помогло.
Что еще можно сделать.
Версия 2.6
ВОзможно у Вас сама java не установлена.
Установите java, и замените следующую строку:
if .%JM_LAUNCH% == . set JM_LAUNCH=java.exe
на
if .%JM_LAUNCH% == . set JM_LAUNCH="C:Program Files (x86)Javajre7binjava.exe"
И будет Вам счастье
-
0
- Наверх
Вопрос:
Когда я запускаю свой JMeter script в режиме командной строки, я становлюсь ниже ошибки.
Но тот же самый script работает отлично в режиме графического интерфейса.
Вам нужна помощь, чтобы исправить это.
Ниже приведена ошибка:
C:UsersSundarapandiyan > jmeter -n -t D:JMETERapache-jmeter-3.1binМои проекты MyFirstUIRecordBadBoy.jmx -lJMETERapache-jmeter-3.1binМои проекты CSVSample_user. CSV “jmeter” не распознается как внутренняя или внешняя команда, оперативной программы или командного файла.
Ответ №1
Как упоминал Dave L, добавьте каталог установочного bin Jmeter в системный путь с помощью “Мой компьютер” > “Свойства” > “Расширенные настройки системы” > “Переменные среды” > “Под системными переменными” выберите “PATH” > “Добавить D:JMETERapache-jmeter-3.1bin на ваш путь в конце.
Обратите внимание: окна учитывают только файл jmeter.bat даже при запуске jmeter. Он не будет запускать простой файл jmeter, доступный по пути установки.
Ответ №2
Чтобы напрямую запустить программу в командной строке, она должна быть либо включена в окружение PATH; в той же папке; или указан полным путем.
Чтобы использовать JMeter через командную строку, вы можете:
- Добавьте папку, содержащую JMeter, в ваш PATH (см. https://www.java.com/en/download/help/path.xml), как это сделать в версиях Windows, это довольно общее, несмотря на говоря JAVA)
- Запустите его непосредственно из папки JMeter (в вашем случае D:JMETERapache-jmeter-3.1), это самый простой вариант для вас.
- Вы можете сделать это либо с помощью Shift + Right Clicking в папке, либо с помощью “Открыть окно команд здесь” ) или;
- Переход в каталог с помощью командной строки
Вы можете изменить диск и каталог в командной строке, используя:
D:
cd D:JMETERapache-jmeter-3.1
Ответ №3
Если у нас есть место в имени папки, путь будет разорван, и вы не сможете запустить файл.
Чтобы преодолеть это, используйте двойные кавычки в полном пути.
Пример:
C:UsersSundarapandiyan > jmeter -n -t “D:JMETERapache-jmeter-3.1binМои проекты” MyFirstUIRecordBadBoy.jmx -l “path_to_jtl_file”
А также добавьте полный путь jmeter. пример:
C:UsersSundarapandiyanJmeter_folderbinjmeter -n -t [остальная часть команды]
Содержание
- Установка Apache.JMeter
- Проверка целостности скачанного архива
- Запуск
- Плагины
- Настройка
В текущей статье описан простой быстрый способ настройки Apache.JMeter: скачать, распаковать, настроить.
Для каждодневного использования, более профессионального, рекомендую автоматизировать скачивание и настройку Apache.JMeter с использованием Apache Maven.
(https://loadtestweb.wordpress.com/2018/11/16/jmeter-maven-plugin/)
1. Установка Apache.JMeter
Дистрибутив JMeter берётся по ссылке со страницы Download Releases.
Скачиваются два файла:
- apache-jmeter-5.0.zip (zip)
- apache-jmeter-5.0.zip.asc (pgp)
Zip-файл скачивается с ближайшего зеркала, а подпись скачивается с сервера Apache.
Можно оба файла скачать с сервера Apache, тогда проверка подписи особо не нужна. Также с сервера Apache берётся дистрибутив прежних версий, например, версии 3.1:
- https://archive.apache.org/dist/jmeter/binaries/
- apache-jmeter-5.0.zip
Архив нужно распаковать, например, в каталог:
- D:toolsapache-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 для проверки корректности подписи
Порядок проверки:
- Проверить pgp-подпись с помощью утилиты gpg.
- Если RSA ключ не был найден, то
- скачать указанный ключ с сервера pgpkeys.mit.edu с помощью утилиты gpg.
- проверить pgp-подпись с помощью утилиты gpg снова.
Если подпись корректна, то будет видна строчка «Good signature».
user@host MINGW64 /d/Distrib/Development/Apache.JMeter $
gpg --verify apache-jmeter-3.2.zip.asc apache-jmeter-3.2.zip
gpg: Signature made 9 апр 2017 г. 18:08:59 RTZ using RSA key ID 0612B399
gpg: Can't check signature: public key not founduser@host MINGW64 /d/Distrib/Development/Apache.JMeter $
gpg --keyserver pgpkeys.mit.edu --recv-key 0612B399
gpg: requesting key 0612B399 from hkp server pgpkeys.mit.edu
gpg: key 0612B399: public key "Milamber (ASF) <milamber@apache.org>" imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)user@host MINGW64 /d/Distrib/Development/Apache.JMeter $
gpg --verify apache-jmeter-3.2.zip.asc apache-jmeter-3.2.zip
gpg: Signature made 9 апр 2017 г. 18:08:59 RTZ using RSA key ID 0612B399
gpg: Good signature from "Milamber (ASF) <milamber@apache.org>"
gpg: aka "Milamber (Milamberspace) <milamberspace@gmail.com>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: C492 3F9A BFB2 F1A0 6F08 E88B AC21 4CAA 0612 B399
1.2. Установка Java
Выдержка из файла README.md гласит, что нужна Java 8:
## Requirements
The following requirements exist for running Apache JMeter:
* Java Interpreter:
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:
- C:Program FilesJavajre1.8.0_192binkeytool.exe
Считаю, что требование JDK для работы keytool — ошибка Apache.JMeter, которая уже исправлена, но в документации ещё не отражена:
- https://bz.apache.org/bugzilla/show_bug.cgi?id=61026
Java (JRE) скачивается с сайта:
- https://java.com/ru/download/manual.jsp
- http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
Java (JDK), Java SE Development Kit 8, скачивается с сайта:
- http://www.oracle.com/technetwork/java/javase/downloads/2133151
- http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
На текущий момент, актуальная версия 8 Update 192.
2. Запуск
2.1. Первый запуск JMeter в Windows 7
Для запуска JMeter в графическом режиме используются скрипты:
- bin
- jmeter.bat — для Windows
- jmeter.sh — для Linux
После первого запуска Apache.JMeter GUI в Windows 7 вероятно вы увидите предупреждение и затем ошибку:
"findstr" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Not able to find Java executable or version. Please check your Java installation.
errorlevel=2
Для продолжения нажмите любую клавишу . . .
На самом деле всё в порядке. По какой-то причине каталог C:Windowssystem32 в Windows 7 — Windows 10 пропал из переменной окружения PATH. Всегда там был и с одним из обновлений пропал, или какая-то неумелая программа его удалила оттуда.
Чтобы C:Windowssystem32 вернуть в PATH, можно модифицировать файл jmeter.bat добавив в него строку:
set PATH=C:WindowsSystem32;%PATH%
Или можно отредактировать значение переменной PATH для всей операционной системы, тогда починится не только скрипт jmeter.bat.
Теперь скрипт jmeter.bat работает корректно и Apache.JMeter запускается.
2.2. Запуск JMeter в консольном режиме
2.3. Полезный командный файл для открытия теста
3. Плагины
3.1. Установка плагинов в Apache.JMeter
3.2. Часто используемые плагины
3.3. Дополнительные полезные плагины
4. Настройка
4.1. Настройка объёма оперативной памяти для java
4.2. Настройка кодировки по умолчанию для java
4.3. Настройки Apache.JMeter
4.4. Настройки логирования Apache.JMeter
Ниже приведена соответствующая ошибка:
java.exe не является признанным файлом как внутренней или внешней командой, оперативная или внешняя команда
ErrorLevel = 9009
Ответ 1
i получал ту же ошибку на WIndows 8.1 (64 бит) и проверял путь Java, но это было нормально
поэтому я просто запускаю свой jmeter.bat с помощью «Запуск от имени администратора», и это сработало для меня.
Ответ 2
Во многих операционных системах существует переменная среды, такая как PATH
, которая содержит список каталогов (или папок), которые нужно искать при поиске команды для выполнения. Команды, которые можно найти через PATH
, обычно называются внешними командами. Программа, которая считывает командную строку или командный файл и вызывает команды, может иметь несколько встроенных команд, которые обычно называются внутренними командами.
Я предлагаю вам изучить набор PATH
(или эквивалент), когда ваша команда java выполняется из командной строки, а также при попытке выполнения из пакетного файла. Сравните эти два и убедитесь, что каталог, содержащий ваш java.exe
, находится в PATH
.
Ответ 3
Установите правильный путь Java (установленный в вашей системе) в компьютере → Расширенные настройки системы → Переменные среды → Ок → Системные переменные → Путь
Я получил ту же проблему и решил, выполнив следующие шаги.
Ответ 4
Не работает с бета-версией Java 9:
Бег:
C:java -version
дает:
Java-версия «9-еа»
Просто зайдите в командную строку и запустите:
java -jar ApacheJMeter.jar
Ответ 5
Я перепробовал все, это в итоге сработало.
Внутри системных переменных:
PATH = "C:WINDOWSsystem32;C:WINDOWS;C:Program FilesJavajdk1.8.0_101bin"
Может помочь кому-то.
Ответ 6
Эта ошибка возникает из-за неправильной установки пути.
Либо вы можете установить его в экологических varialables, либо правой кнопкой мыши jmeter.bat файл, выберите edit, установите путь их, для справки см. руководства пользователя jmeter.apache.org.
Ответ 7
Для меня мой путь Java содержит пробел, и jmeter сказал, что он не может найти Java
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
.. Я посмотрел на jmeter.sh script и увидел, что он получил путь от «Plugin-Ins».. дальше. Я попытался просто комментировать команду exit
после этой проверки в script.., а затем я смог запустить jmeter.
Таким образом, очевидно, что в логике проверки есть ошибка, где сообщение об ошибке не может найти java на самом деле не верно (если Java действительно настроена правильно), поэтому его можно игнорировать.
Ответ 8
Для пользователей Windows 8.1:
Ошибка при попытке запустить jmeter.bat
Сообщение об ошибке:
Невозможно найти исполняемый файл Java или версию. Проверьте свою установку Java. ErrorLevel = 2
Нажмите любую клавишу, чтобы продолжить
Разрешение:
Щелкните правой кнопкой мыши jmeter.bat и запустите в качестве администратора.
Это сработало для меня, надеюсь, что это поможет. Удачи.
Ответ 9
Установите правильную переменную JM_LAUNCH в java.exe
Ответ 10
Для пользователей Windows XP установите среду Java, выполнив следующие шаги:
http://www.tutorialspoint.com/jmeter/jmeter_environment.htm
Обратите внимание, что путь зависит от вашего установленного JDK.
И скачайте файл с:
https://svn.apache.org/repos/asf/jmeter/trunk/bin/jmeter.bat
Затем замените ваш jmeter.bat
на загруженный файл.
Ответ 11
Если вы установили Java и все еще получаете эту ошибку, пожалуйста, установите путь java_home
ниже, используя команду ниже команды в терминале:
export JAVA_HOME="/Library/InternetPlugIns/JavaAppletPlugin.plugin/Contents/Home"
Ответ 12
Так как я запускаю много версий Java.. я изменил jmeter.bat.
rem JM_START — установите это для «запуска» запуска JMeter в отдельном окне
rem это используется jmeterw.cmd script.
рем
rem = = = = = ====
SETLOCAL
rem Минимальная версия для запуска JMeter
set MINIMAL_VERSION = 1.8.0
set PATH =% PATH%; C:Program Files (x86)IBMJava80jrebin < < < < Добавьте эту строку в jmeter.bat
Ответ 13
Скопировал исполняемый файл JAVA из Установленной версии Java из C:Program FilesJavajdk1.8.0_191bin и вставил в папку, где находится jmeter bat, и это сработало для меня.
Ответ 14
Не совсем та же проблема, но кто-то может найти это полезным
Не jmeter.bat
дважды по jmeter.bat
вместо этого используйте ApacheJMeter.jar
в том же каталоге
Для меня jmeter.bat
работает, но на короткое время закрывается почти сразу и не выдает никакой ошибки. Выше обходной путь позволил мне начать работать
Сегодня я хочу рассказать о замечательном инструменте, название которого вынесено в заголовок статьи. Разумеется, моей целью не является написание подробного руководства по 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. Возможно, такой подход позволит сэкономить очень много времени.
Установка
С этим всё просто:
- Устанавливаем Java (если она еще не установлена)
- Выкачиваем и распаковываем свежую сборку JMeter
- Устанавливаем переменную среды JMETER_BIN на каталог с исполняемыми файлами JMeter (только для Windows)
- Запускаем 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_pass}, тут уж вам придётся поверить мне на слово. Сами настройки удобно держать в 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 до ${urls_#} и текущее значение помещаем в 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:
Long t = ctx.getPreviousResult().currentTimeInMillis();
vars.put("timestamp", t.toString());
А во втором, получать с его помощью временную задержку:
Long d = ctx.getPreviousResult().currentTimeInMillis() - Long.parseLong(vars.get("timestamp"));
vars.put("delay", d.toString());
В общем, это тоже работает:
Но здесь следует сделать важное замечание. Поскольку, в настоящий момент, я занимаюсь не нагрузочным тестированием, производительность этой конструкции для меня не очень важна. Если в вашем случае это не так, стоит ознакомиться со следующей статьёй.
Запуск
Если бы не было этой возможности, не стоило бы и весь этот разговор заводить. В случае нагрузочного тестирования, сценарий можно запускать из GUI, нет проблем. Но если нас интересует автоматизация, необходимо уметь запускать его молча (например по cron-у). Разумеется такая возможность тоже есть:
./jmeter.sh -n -t test.jmx -l test.log
Сохраняем сценарий в файл с расширением jmx (внутри это XML) и запускаем эту команду. Сценарий отрабатывает без запуска GUI и заодно пишет результаты своей работы в лог. Всё просто и удобно.
-
Kiseta
- Графоман
- Сообщения: 8081
- Зарегистрирован: 22 фев 2005, 17:33
Jmeter установить
Кто нибудь пользуется Jmeter? Никак не могу установить. Ну точнее Java никак не устанавливается что бы Jmeter работал. Уже перерыла весь Google. Все что там написано сделала, воз и ныне там. Спасибо
-
vansan
- Зритель
- Сообщения: 6
- Зарегистрирован: 12 апр 2014, 21:30
-
levak
- Графоман
- Сообщения: 22010
- Зарегистрирован: 15 июл 2009, 15:42
- Откуда: Москва, Франкфурт, Ричмонд.
Re: Jmeter установить
Сообщение
levak » 09 авг 2016, 18:22
Не знаю подойдет ли вам но на всякий случай..
Комп у меня на 64 бит,а бесплатный телефон тока работае с java 32 бит..
Приходится 2 версии java держать 32 и 64 бит…
-
Kiseta
- Графоман
- Сообщения: 8081
- Зарегистрирован: 22 фев 2005, 17:33
Re: Jmeter установить
Сообщение
Kiseta » 10 авг 2016, 00:13
Спасибо, да, это все уже сделано, неоднократно. Таких инструкций несколько нашлось. Переменные все на местах, проверены перепроверены. Устанавливала на десктопы, виртуальные машины, в директории C:Program FilesJava или просто c:Java, устнавливала и JDK и JRE.
Выдает вот такую ошибку при запуске jmeter.bat
Код: Выделить всё
Not able to find Java executable or version. Please check your Java installation
.
errorlevel=2
Press any key to continue . . .
Вот что прописано в переменной PATH, может тут глюк закрался
Код: Выделить всё
C:ProgramDataOracleJavajavapath;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%JAVA_HOME%bin;%JMETER_HOME%bin
-
Kiseta
- Графоман
- Сообщения: 8081
- Зарегистрирован: 22 фев 2005, 17:33
Re: Jmeter установить
Сообщение
Kiseta » 10 авг 2016, 00:14
levak писал(а):Не знаю подойдет ли вам но на всякий случай..
Комп у меня на 64 бит,а бесплатный телефон тока работае с java 32 бит..
Приходится 2 версии java держать 32 и 64 бит…
да, спасибо, тоже проверила 32 бит все машины и версию JDK 32 битную устанавливала…
-
vansan
- Зритель
- Сообщения: 6
- Зарегистрирован: 12 апр 2014, 21:30
Re: Jmeter установить
Сообщение
vansan » 10 авг 2016, 05:34
сам не пользовался, решил попробовать, скачал два файла http://jmeter.apache.org/download_jmeter.cgi, создал папку, распаковал туда оба файла, установил https://java.com/ru/download/, все запустилось. Попробуйте так же, предварительно удалив java и Apache JMeter, может поможет
-
tasko
- Графоман
- Сообщения: 18705
- Зарегистрирован: 20 июл 2003, 09:16
- Откуда: Торонто
Re: Jmeter установить
Сообщение
tasko » 10 авг 2016, 06:30
vansan писал(а):windows 10 32 разрядная
Не поверил. Полез проверять.
Вот что пишут
Microsoft gives you the 32-bit version of Windows 10 if you upgrade from the 32-bit version of Windows 7 or 8.1.
You’ll need to perform a clean install to get to the 64-bit version of Windows 10 from the 32-bit one. There’s no upgrade path.http://www.howtogeek.com/228042/how-to- … indows-10/
-
Gatchinskiy
- Комбинатор
- Сообщения: 20951
- Зарегистрирован: 05 окт 2003, 20:44
- Откуда: St. Petersburg(Gatchina) > Vancouver
Re: Jmeter установить
Сообщение
Gatchinskiy » 10 авг 2016, 11:55
Kiseta писал(а):
Спасибо, да, это все уже сделано, неоднократно. Таких инструкций несколько нашлось. Переменные все на местах, проверены перепроверены. Устанавливала на десктопы, виртуальные машины, в директории C:Program FilesJava или просто c:Java, устнавливала и JDK и JRE.
Выдает вот такую ошибку при запуске jmeter.batКод: Выделить всё
Not able to find Java executable or version. Please check your Java installation . errorlevel=2 Press any key to continue . . .
Вот что прописано в переменной PATH, может тут глюк закрался
Код: Выделить всё
C:ProgramDataOracleJavajavapath;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%JAVA_HOME%bin;%JMETER_HOME%bin
%JAVA_HOME%bin
%JMETER_HOME%bin
-
Kiseta
- Графоман
- Сообщения: 8081
- Зарегистрирован: 22 фев 2005, 17:33
Re: Jmeter установить
Сообщение
Kiseta » 10 авг 2016, 12:39
Gatchinskiy писал(а):
Kiseta писал(а):
Спасибо, да, это все уже сделано, неоднократно. Таких инструкций несколько нашлось. Переменные все на местах, проверены перепроверены. Устанавливала на десктопы, виртуальные машины, в директории C:Program FilesJava или просто c:Java, устнавливала и JDK и JRE.
Выдает вот такую ошибку при запуске jmeter.batКод: Выделить всё
Not able to find Java executable or version. Please check your Java installation . errorlevel=2 Press any key to continue . . .
Вот что прописано в переменной PATH, может тут глюк закрался
Код: Выделить всё
C:ProgramDataOracleJavajavapath;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%JAVA_HOME%bin;%JMETER_HOME%bin
%JAVA_HOME%bin
%JMETER_HOME%bin
слэши я пробовала уже в переменные добавлять, но еще раз дай все проверю, вот ведь как заглючит, так заглючит, может какие секьюрити полиси мешают…
-
Gatchinskiy
- Комбинатор
- Сообщения: 20951
- Зарегистрирован: 05 окт 2003, 20:44
- Откуда: St. Petersburg(Gatchina) > Vancouver
Re: Jmeter установить
Сообщение
Gatchinskiy » 10 авг 2016, 13:02
это похоже мелкая ошибка в спеллинге, напиши как ты сетапнула JAVA_HOME и JMETER_HOME …
ну или проще, открой командную строку
set JAVA_HOME=C:Program FilesJavajdk1.7.0_75 [your path to JDK]
click Enter
set JMETER_HOME=C:Program Files… [your path to Jmeter]
click Enter
set path=%path%;%JAVA_HOME%bin;%JMETER_HOME%bin;
click Enter
-
Stanislav
- Mr. Minority Report
- Сообщения: 42504
- Зарегистрирован: 19 окт 2005, 16:33
- Откуда: Moscow — Richmond — New Wesт — Burnaby
Re: Jmeter установить
Сообщение
Stanislav » 10 авг 2016, 13:19
Gatchinskiy писал(а):это похоже мелкая ошибка в спеллинге, напиши как ты сетапнула JAVA_HOME и JMETER_HOME …
ну или проще, открой командную строку
set JAVA_HOME=C:Program FilesJavajdk1.7.0_75 [your path to JDK]
click Enterset JMETER_HOME=C:Program Files… [your path to Jmeter]
click Enterset path=%path%;%JAVA_HOME%bin;%JMETER_HOME%bin;
click Enter
Это неправильно. И сообщение об ошибке говорит об этом:
Код: Выделить всё
Not able to find Java executable or version. Please check your Java installation
Надо так:
JAVA_HOME=»C:Program FilesJavajdk1.7.0_75″
JMETER_HOME=»C:Program Files[your path to Jmeter]»
-
Kiseta
- Графоман
- Сообщения: 8081
- Зарегистрирован: 22 фев 2005, 17:33
Re: Jmeter установить
Сообщение
Kiseta » 10 авг 2016, 13:29
Gatchinskiy писал(а):
%JAVA_HOME%bin
%JMETER_HOME%bin
Не помогло. Так, проверяем все по порядку:
Windows version:
Windows 7, x86-based PC (32 bit)
Java:
JRE, установлена в директорию C:Javajre1.8.0_101
System Variables:
JAVA_HOME: C:Javajre1.8.0_101
JMETER_HOME: C:apache-jmeter-3.0
PATH: C:ProgramDataOracleJavajavapath;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%JAVA_HOME%bin;%JMETER_HOME%bin
запускаем jmeter.bat
result:
Код: Выделить всё
Not able to find Java executable or version. Please check your Java installation
.
errorlevel=2
Press any key to continue . . .
попробовала тоже самое с установкой JDK
где еще смотреть?
-
Kiseta
- Графоман
- Сообщения: 8081
- Зарегистрирован: 22 фев 2005, 17:33
Re: Jmeter установить
Сообщение
Kiseta » 10 авг 2016, 13:35
Gatchinskiy писал(а):это похоже мелкая ошибка в спеллинге, напиши как ты сетапнула JAVA_HOME и JMETER_HOME …
ну или проще, открой командную строку
set JAVA_HOME=C:Program FilesJavajdk1.7.0_75 [your path to JDK]
click Enterset JMETER_HOME=C:Program Files… [your path to Jmeter]
click Enterset path=%path%;%JAVA_HOME%bin;%JMETER_HOME%bin;
click Enter
так тоже делала, и просто в Environment Variables > System Variables создавала переменные и им values прописывала.
-
tasko
- Графоман
- Сообщения: 18705
- Зарегистрирован: 20 июл 2003, 09:16
- Откуда: Торонто
Re: Jmeter установить
Сообщение
tasko » 10 авг 2016, 13:37
Kiseta писал(а):
PATH: C:ProgramDataOracleJavajavapath;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%systemroot%System32WindowsPowerShellv1.0;%JAVA_HOME%bin;%JMETER_HOME%bin
А что установлено в C:ProgramDataOracleJavajavapath ?
Вот связанная ошибка, которую он показывает:
java.exe не является распознанным файлом как внутренняя или внешняя команда, исполняемая или внешняя команда
уровень ошибки = 9009
14 ответов
Я получал ту же ошибку в WIndows 8.1 (64-разрядная версия) и проверял путь Java, но все было в порядке
Поэтому я просто запускаю свой jmeter.bat с запуском от имени администратора, и это сработало для меня
15
Sachin Gupta
14 Май 2015 в 14:28
Многие операционные системы имеют переменную среды, такую как PATH
, которая содержит список каталогов (или папок), которые нужно искать при поиске команды для выполнения. Команды, которые можно найти через PATH
, обычно называются внешними командами. Программа, которая считывает командную строку или пакетный файл и вызывает команды, может иметь ряд встроенных команд, обычно называемых внутренними командами.
Я предлагаю вам изучить набор PATH
(или аналогичный), когда ваша команда java выполняется из командной строки, а также при попытке выполнения из пакетного файла. Сравните их и убедитесь, что каталог, содержащий ваш java.exe
, находится в PATH
.
8
AdrianHHH
22 Дек 2013 в 22:18
Не работает с бета-версией Java 9:
Бег:
C:java -version
Дает:
java версия «9-еа»
Просто зайдите в командную строку и выполните:
java -jar ApacheJMeter.jar
5
4b0
15 Апр 2019 в 10:02
Установите правильный путь Java (установленный в вашей системе) в разделе «Компьютер» -> «Дополнительные параметры системы» -> «Переменные среды» -> «ОК» -> «Системные переменные» -> «Путь».
У меня возникла та же проблема, и я решил ее, выполнив описанные выше шаги.
4
Learner
8 Июл 2014 в 18:00
Я пробовал все, это в конечном итоге сработало.
В системных переменных:
PATH = "C:WINDOWSsystem32;C:WINDOWS;C:Program FilesJavajdk1.8.0_101bin"
Может кому-нибудь помочь.
2
4b0
15 Апр 2019 в 10:03
Эта ошибка возникает из-за того, что путь не был задан правильно.
Либо вы можете установить его в переменных среды, либо щелкнуть правой кнопкой мыши файл jmeter .bat, выбрать «Редактировать», указать путь к ним, для справки см. Руководства пользователя jmeter.apache.org.
0
user3136736
26 Дек 2013 в 17:23
Для меня в моем пути Java есть пробел, и jmeter сказал, что не может найти Java
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
.. Я посмотрел на скрипт jmeter.sh и увидел, что он получил путь от «Plugin-Ins» .. вперед. Я попытался просто закомментировать команду exit
после этой проверки в сценарии… и тогда я смог запустить jmeter.
Таким образом, очевидно, что в логике проверки есть ошибка, из-за которой сообщение об ошибке не может найти java на самом деле не верно (если Java действительно настроен правильно), поэтому его можно игнорировать.
0
Gene Bo
17 Июл 2015 в 21:36
Для пользователей Windows 8.1:
Ошибка при попытке запустить jmeter.bat
Сообщение об ошибке:
Не удалось найти исполняемый файл или версию Java. Пожалуйста, проверьте установку Java. errorlevel=2 Нажмите любую клавишу, чтобы продолжить
Разрешение:
Щелкните правой кнопкой мыши jmeter.bat и запустите от имени администратора.
Это сработало для меня, надеюсь, это поможет. Удачи
0
Shredhar Raju
11 Авг 2015 в 08:01
Установите правильную переменную JM_LAUNCH в java.exe
0
Viktor Hanko
14 Авг 2015 в 11:51
Если вы установили Java, но по-прежнему получаете эту ошибку, укажите путь java_home
ниже, введя следующую команду в терминале:
export JAVA_HOME="/Library/InternetPlugIns/JavaAppletPlugin.plugin/Contents/Home"
0
Brian Tompsett — 汤莱恩
16 Июн 2016 в 20:04
Так как я запускаю много версий Java, я модифицировал jmeter.bat.
Rem JM_START — установите для этого параметра значение «start», чтобы запустить JMeter в отдельном окне. rem используется сценарием jmeterw.cmd. рем рем =============================================== =====
Setlocal
Rem Минимальная версия для запуска JMeter set MINIMAL_VERSION=1.8.0 set PATH=%PATH%;C:Program Files (x86)IBMJava80jrebin <<< добавить эту строку в jmeter.bat
0
Mike Wilcox
19 Сен 2017 в 21:12
Скопировал исполняемый файл JAVA из установленной версии Java из C:Program FilesJavajdk1.8.0_191bin и вставил в папку, где находится jmeter bat, и это сработало для меня.
0
Deepak rayathurai
15 Апр 2019 в 09:46
Не совсем та же проблема, но кому-то может быть полезно
Не щелкайте дважды jmeter.bat
, а вместо этого ApacheJMeter.jar
в том же каталоге
Для меня jmeter.bat
запускается, но на короткое время закрывается почти сразу и не вызывает никаких ошибок. Приведенный выше обходной путь позволил мне начать работу
0
Uliysess
30 Апр 2019 в 10:55