Надеюсь, у тебя все отлично.
Я обращаюсь к сообществу, так как в настоящее время я столкнулся с проблемой выполнения последовательности команд с Linux-машины с использованием jmeter.
Немного фона: -
У меня есть внешняя виртуальная машина, которая используется для имитации передачи файла по различным входящим каналам. Эта виртуальная машина в основном действует как третья сторона, на которой размещаются файлы, которые затем передаются в другое место, следуя последовательности команд.
Последовательность команд, которую я пытаюсь выполнить, чтобы имитировать третье лицо, приведена ниже.
ls (чтобы просмотреть файлы в домашнем каталоге)
mv test123.txt test456.txt (это переименовывает файл в домашнем каталоге с test123.txt на test456.txt)
Затем мы подключаемся к серверу обмена файлами с помощью команды ниже
После подключения мы выполняем следующую последовательность
После выполнения последней команды файл переносится во внутреннюю папку на основе идентификатора учетной записи.
Я провел поиск в стеке по потоку и нашел пару ссылок, но не смог успешно использовать их для имитации приведенной выше последовательности команд.
Самый близкий, который я мог найти, показан ниже
Как выполнить команду Linux или сценарий оболочки из APACHE JMETER
Но это не говорит о выполнении с самой Linux-машины.
Любая помощь в том, как подойти к этому, поможет мне. заранее спасибо
PS: - Я использую jmeter, потому что мне нужно, чтобы эта последовательность выполнялась непрерывно, пока я не передам ожидаемое количество файлов в часы пик, и эти файлы имеют разные размеры от нескольких МБ до пары ГБ.
Новое редактирование
Я использовал препроцессор JSR223, где у меня есть последовательность команд, а затем я вызываю эту команду в семплере OSS и создал скрипт, как показано ниже.
Сценарий выполняется в Linux без ошибок, но файл не передается в место назначения. Я что-то упускаю?
В некоторых исследованиях я нашел команду lftp, но не уверен, как ее использовать в моем случае и будет ли она работать или нет.
Какие-либо предложения?





Для выполнения команд на локальной машине Linux вы можете использовать Образец процесса ОС
Для выполнения команд на удаленной машине Linux вы можете использовать Сэмплер команд SSH
При необходимости см. статью Как запускать внешние команды и программы локально и удаленно из JMeter для получения дополнительной информации.
Для передачи файла с локального на удаленный вы можете использовать Сэмплер SSH SFTP
Чтобы получить SSH Command и SSH SFTP Samplers, установите плагин Поддержка протокола SSH, используя Менеджер плагинов JMeter:
Мне удалось решить эту проблему с помощью сэмплера SSH SFTP, я добавлю подробные шаги, когда у меня будет время. Спасибо
Спасибо за предложения @Dmitri T, я постараюсь реализовать их, хотя вопрос qucik. Поскольку My jmeter находится на внешней виртуальной машине Linux, я бы, вероятно, использовал пробоотборник процессов ОС, как вы предложили в первом пункте выше. Мой вопрос: нужно ли мне использовать сэмплер ОС несколько раз для каждой команды, которую я выполняю? Я могу избавиться от нескольких шагов, таких как ls, поскольку я знаю, какой маршрут и идентификатор учетной записи использовать для передачи.