首页 > 代码库 > jmeter使用beanshell构造参数化

jmeter使用beanshell构造参数化

1、先在本地写一个java类,用来随机生成一个数字,如:

package com.jmeter.test;

public class BeanShellTest {
	public int getRandom() {
		int i = (int) (Math.random()*1000);
		System.out.println(i);
		String.valueOf(i);
		return i;
	}
}

  

2. 在jmeter依次添加线程组、http请求、http请求下添加前置处理器的BeanShell PreProcessor、查看结果树和debug

3.最终的树结果如下:

技术分享

4.打开BeanShell PreProcessor来写我们的参数构造

source("D:\\workspace\\jmetertest\\src\\test\\java\\com\\jmeter\\test\\BeanShellTest.java");  //引入步骤1的本地代码

int a = new BeanShellTest().getRandom();
vars.put("a",String.valueOf(a));

String b = "helloworld";
vars.put("b",b);

5.打开http请求,引用构造的参数值

技术分享

6.运行结果可以看到请求已经拿到了我们在BeanShell PreProcessor构造的数值:

技术分享

jmeter使用beanshell构造参数化