我在jmeter遇到了一个问题,我想知道我是否能解决这个问题。
我需要在远程计算机上运行一个脚本。
当我通过命令行在我的计算机上运行脚本时,它正在工作。

plink -ssh jenkins@178.27.288.288 -pw passtest  sudo /opt/test/test.sh

我想在Jmeter中从我的计算机运行它(与脚本运行相同)。
我试过ssh取样器,但没有成功
我想用操作系统采样器,可以吗?我可以在远程计算机上运行脚本吗?
我找到的唯一解释来自blazemeter网站,并提到:
同样,由于通过操作系统进程采样器运行“plink”程序非常容易
远程机器:jenkins@178.27.288.288,
远程计算机的密码:passtest,
命令:sudo/opt/test/test.sh
所以有人可以建议
我添加了操作系统采样器
linux - 如何在jmeter中使用OS Sampler进行远程脚本-LMLPHP
并获取此消息:
Exception occurred whilst executing system call: java.io.IOException: Cannot run program "sudo /opt/test/test.sh" (in directory "plink -ssh jenkins@178.27.288.288 -pw passtest "): CreateProcess error=267, The directory name is invalid

有人能建议如何在远程计算机上运行这个命令吗?
再一次,如果我将整行代码放入命令行,它就可以工作了,但是在我为Jmeter剪切之后,它就不能工作了?我错过了什么

最佳答案

命令参数需要放在“命令参数”部分,而不是“工作目录”中
我建议通过cmd.exe解释器运行脚本,因此实际的命令应该是cmd,而不是Linux命令
如果远程Linux机器不在known_hosts中,那么提供-hostkey参数会更安全,因为脚本将被卡住
假设您的操作系统进程采样器配置如下所示:
linux - 如何在jmeter中使用OS Sampler进行远程脚本-LMLPHP
使用JSR223 Sampler可能更容易,在这里您可以调用程序并获得输出,就像:

"c:\somefolder\plink.exe -pw passtest sudo /opt/test/test.sh".execute().text

更多方法信息:Apache Groovy - Why and How You Should Use It

关于linux - 如何在jmeter中使用OS Sampler进行远程脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51313933/

10-11 06:57
查看更多