我想使用JMeter来测试Java服务。但是,我想要测试的URL必须是动态生成的(时间戳,有效负载哈希等)。我创建了一个自动执行jar,输出一个有效的URL。
java -jar file.jar
http://www.example.com/api?params=...
URL会更改每次迭代。有没有办法我可以配置JMeter来运行Jar来获取它所做的每个HTTP请求的URL?谢谢!
答案 0 :(得分:1)
您需要结合使用以下内容:
详细说明:
假设系统路径中有java二进制文件,则需要以下内容:
在Thread Group下添加OS Process Sampler
如果您运行Thead Group,您应该看到以下内容:
系统调用完成。 流程输出: http://example.com/api?params= ....
我相信你对“params =”
之后的某些事情感兴趣因此,获取此值会将正则表达式提取器后处理器添加为OS Process sampler的子级,其中包含以下详细信息:
这将提取api?params = ...因此您将能够将其用作HTTP请求的路径,如$ {params}
答案 1 :(得分:0)
要在JMeter中运行jar文件,请将JAR文件和所有依赖项放在{JMeter_HOME} / lib / ext文件夹中。在线程组中添加BeanShell Sampler以从Java类调用方法。
答案 2 :(得分:0)
您的jar不必位于JMeter的lib / ext文件夹中。适用于任何目录