嗨,我正在传递一封电子邮件,它是一个时间函数,如下所示
email = ${__time(MMddyy)}_${__time(HMS)}@yopmail.com
Run Code Online (Sandbox Code Playgroud)
这个函数的值在我每次调用变量 email 时都会改变。我想将从这个函数生成的这个值存储到一个变量中,并在其他请求中使用它。
所以目前我在两个不同的 http 请求中收到两封不同的电子邮件,因为我的两个 http 请求之间存在一些时间延迟。
我想做的是..通过从请求中提取值并将其传递到第二个http请求中来存储在第一个http请求中发送的电子邮件。
POST data:
email=062915_160738%40yopmail.com
Run Code Online (Sandbox Code Playgroud)
我知道从 html 响应中提取的方法..但是有什么方法可以从 jmeter 中的请求中提取吗?
如果是这样,有人可以告诉我如何实现这一目标吗?
谢谢你
将以下代码放入后处理器的“脚本”区域
import org.apache.jmeter.config.Argument;
import org.apache.jmeter.config.Arguments;
Arguments argz = ctx.getCurrentSampler().getArguments();
for (int i = 0; i < argz.getArgumentCount(); i++) {
Argument arg = argz.getArgument(i);
if (arg.getName().equals("email")) {
vars.put("EMAIL", arg.getValue());
break;
}
}
Run Code Online (Sandbox Code Playgroud)${EMAIL}在需要的地方引用生成的值。澄清:
email请求参数的值(如果有)并将其存储到EMAILJMeter 变量ctx- JMeterContext类实例的 简写vars= JMeterVariables类实例的简写Arguments和Argument- 你可以从 JMeterContext JavaDoc 中找出来有关JMeter 中Beanshell 脚本的更多信息,请参阅如何使用 BeanShell:JMeter 最喜欢的内置组件指南。
| 归档时间: |
|
| 查看次数: |
10313 次 |
| 最近记录: |