我的应用程序包括选择标题下拉列表包含值,Mr,Miss,Dr&夫人
我想为不同的线程捕获不同的标题(随机但是从4以上)。请提出建议。
这是我的脚本,我将title参数作为$ {randomTitle}
传递
值传递给数据库,
发布请求,
答案 0 :(得分:1)
您可以使用Beanshell预处理器:
import java.util.Random;
public enum frm_titles {"Mr", "Miss", "Dr", "Mrs"};
Random randGenerator = new Random();
int randInt = randGenerator.nextInt(frm_titles.values().length);
vars.put("randomTitle",frm_titles.values()[randInt].toString());
然后,在您的测试计划中更改帖子参数并添加${randomTitle}
而不是您的标题参数。
查看此链接以获取更多信息:
http://www.beanshell.org/manual/quickstart.html
http://jmeter.apache.org/usermanual/component_reference.html#BeanShell_Sampler
http://jmeter.apache.org/usermanual/functions.html
http://testeverythingqtp.blogspot.com.es/2013/01/jmeter-bean-shell-script-create-file.html
http://jmeter-kh.blogspot.com.es/2009/07/how-to-make-beanshell-work-in-jmeter.html
答案 1 :(得分:1)
出于兴趣,在那里使用枚举是否至关重要?
尝试按如下方式修改您的代码:
import java.util.Random;
String[] frm_titles = {"Mr", "Miss", "Dr", "Mrs"};
Random randGenerator = new Random();
int randInt = randGenerator.nextInt(frm_titles.length);
vars.put("randomTitle",frm_titles[randInt]);
它应该以这种方式工作。如果需要使用枚举结构,则枚举不能是Beanshell解释器的本地 - 将其编译为.jar并将其放在JMeter类路径中。
有关Apache JMeter中Beanshell脚本的更多详细信息,请参阅How to use BeanShell: JMeter's favorite built-in component指南。
答案 2 :(得分:-1)
我认为有两种方法可以,
第一种方法最好在上面解释,对于第二种方法,你可以尝试,