groovy - 从 groovy 传递 jmeter 采样器结果

标签 groovy jmeter

我是 JMeter 新手,正在尝试编写一些 Groovy Samplers。我无法从脚本代码中找到如何与 JMeter 框架通信的文档/示例。我希望有人能为我指出文档的良好起点。

我在 JSR223 采样器中尝试了以下操作

import org.apache.jmeter.samplers.SampleResult;
println(" running test") 
SampleResult sr=new SampleResult();
sr.setResponseCode("300");
sr.setSuccessful(false);
sr.setErrorCount(2);
sr.setResponseData("This is the response");
ResponseCode=300
return sr;

但是看起来好像没有什么效果。查看结果树监听器输出,采样器结果为

Thread Name: Thread Group 1-1
Sample Start: 2016-03-22 17:38:07 CDT
Load time: 12
Connect Time: 0
Latency: 0
Size in bytes: 0
Headers size in bytes: 0
Body size in bytes: 0
Sample Count: 1
Error Count: 0
Response code: 200
Response message: OK

...

最佳答案

这样是行不通的。

如果您查看 JSR223 Sampler GUI,您将看到一些预定义的变量,例如:

  • ctx
  • 变量
  • Prop
  • 结果示例
  • 等等

JSR223 Pre Defined Variables

所以你已经有一个实例化的 SampleResult可以直接使用,例如:

SampleResult.setResponseCode("300");
SampleResult.setSuccessful(false);
SampleResult.setErrorCount(2);
SampleResult.setResponseData("This is the response");

有关使用 Groovy 脚本和脚本编写最佳实践的更多信息,请查看 Beanshell vs JSR223 vs Java JMeter Scripting: The Performance-Off You've Been Waiting For!指南。

关于groovy - 从 groovy 传递 jmeter 采样器结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36166632/

相关文章:

java - 为什么在没有显式调用的情况下会调用默认函数?

grails - Grails:在GSP View 中拆分字符串

testing - 断言监听器在 jmeter 中不起作用?

java - 无法在最新的 JMeter 版本上加载 JMeter 测试计划 - jmeter.protocol.java.config.gui.JavaConfigGui : Error setting class

tomcat - Tomcat 上的平均最大并发用户数

java - 在同一项目中本地应用自定义 gradle 插件

groovy - 获取 Groovy 类的闭包属性名称

groovy - 有没有办法通过 Jenkins 脚本控制台使用 groovy 脚本清理 Jenkins Worflowjob 工作区?

java - 从 JMeter 采样器读取二进制数据

java - 在 jmeter.bat 文件中,NewSize 和 MaxNewSize 的用途是什么?