У меня следующая структура:
- Машина 1: подчиненный Jenkins (Windows)
- Машина 2: машина JMeter (Windows)
ЧтоЯ хочу получить? Машина 1 получает некоторые параметры от Дженкинса (используется для тестов JMeter).
path/Performance.bat %param1% %param2% %param3%
Итак, Performance.bat выглядит примерно так:
IF %param1%==param1_value(
IF %param2%==param2_value(
@echo
path_to_psexec\PsExec.exe \\machine1_address -u user -p password cmd /c (
MKDIR %param3%\Automation_Results_Build_%BUILD_NUMBER%_ID
cd %JMeterPath%/
jmeter -n -t [...])
exit /b 0
))
Итак, в основномон создает папку результатов, затем перемещается в местоположение JMeter и пытается запустить тесты производительности с заданными значениями.
Проблема.Кажется, что PSExec не выполняет команды, как предполагалось.Через CMD отправлено 3 команды: создать папку для результатов, перейти к пути JMeter, запустить тесты.Что не так с моим подходом?Как выполнить несколько команд CMD в одном вызове PSexec?
Вывод:
ECHO is on.
PsExec v2.2 - Execute processes remotely
Copyright (C) 2001-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
Connecting to machine_address...
Starting PSEXESVC service on machine_address...
Connecting with PsExec service on machine_address...
Starting cmd on machine_address...
cmd exited on machine_address with error code 0.
The system cannot find the path specified.
'jmeter' is not recognized as an internal or external command,
operable program or batch file.
Почему «Система не может найти указанный путь»?
Iя не хочу создавать файл .bat на компьютере 2, потому что я хочу увидеть результаты тестов в Jenkins.
Спасибо, что уделили время.