Невозможно получить файл с использованием SSH SFTP-сэмплера в JMeter - PullRequest
0 голосов
/ 01 января 2019

Я новичок в JMeter и пытаюсь подключиться к серверу sftp. Я вставляю журнал JMeter. Я не уверен, почему я получаю эту ошибку, если что-то не так с именем пользователя или паролем, тогда я могу подключиться, используятакие же подробности в FileZilla.Пожалуйста, помогите мне.

2019-01-01 20:23:07,423 INFO o.a.j.e.StandardJMeterEngine: Running the test!
2019-01-01 20:23:07,424 INFO o.a.j.s.SampleEvent: List of sample_variables: []
2019-01-01 20:23:07,425 INFO o.a.j.g.u.JMeterMenuBar: setRunning(true, *local*)
2019-01-01 20:23:07,581 INFO o.a.j.e.StandardJMeterEngine: Starting ThreadGroup: 1 : FTP Users
2019-01-01 20:23:07,581 INFO o.a.j.e.StandardJMeterEngine: Starting 1 threads for group FTP Users.
2019-01-01 20:23:07,581 INFO o.a.j.e.StandardJMeterEngine: Thread will continue on error
2019-01-01 20:23:07,581 INFO o.a.j.t.ThreadGroup: Starting thread group... number=1 threads=1 ramp-up=1 perThread=1000.0 delayedStart=false
2019-01-01 20:23:07,582 INFO o.a.j.t.ThreadGroup: Started thread group number 1
2019-01-01 20:23:07,582 INFO o.a.j.e.StandardJMeterEngine: All thread groups have been started
2019-01-01 20:23:07,583 INFO o.a.j.t.JMeterThread: Thread started: FTP Users 1-1
2019-01-01 20:23:07,587 ERROR o.a.j.p.s.s.AbstractSSHSampler: SSH connexion error
com.jcraft.jsch.JSchException: java.net.UnknownHostException: sftp://xx.x.x.xx

1 Ответ

0 голосов
/ 02 января 2019

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

Можно настроить JMeter для использования корпоративного прокси , однако SSH Sampler не учитывает конфигурацию прокси-сервера JMeter и не предоставляет свои собственные настройки прокси.

Так что на данный момент единственный способ реализации вашего сценария, о котором я могу подумать, - это написать связанный с SSH код в JSR223 Sampler

Пример кода будет выглядеть примерно так:

def jsch = new com.jcraft.jsch.JSch()

def session = jsch.getSession('your_username', 'your_host', 22) //replace 22 with your port for custom SSH server ports
def proxy = new com.jcraft.jsch.ProxyHTTP("your_corporate_proxy_host", 3128) // replace 3128 with your corporate proxy port
proxy.setUserPasswd('corporate_proxy_username', 'corporate_proxy_password')
session.setProxy(proxy)
session.setConfig("StrictHostKeyChecking", "no")
session.setPassword('your_ssh_password')

session.connect()

def channel = session.openChannel("sftp")

((com.jcraft.jsch.ChannelSftp) channel).get('remote_file', 'local_file')

session.disconnect()

Ссылки:

...