当前位置: 首页 > >

jmeter进程和线程的区别_jmeter如何并行执行多个线程组

发布时间:

展开全部


需要32313133353236313431303231363533e58685e5aeb931333365646263控制线程组内的操作在满足某一条件才执行,那么就需要使用if或者while;


要使用if或者while都需要一个变量,而这个变量要在两个或多个线程组内使用,那么if使用变量就需要是全局变量,while使用的变量就需要是局部变量;


同一个线程组的请求是按照顺序执行,不同线程组顺序不固定,想让线程组允许执行,需要勾选一个选项。



第一顺序执行线程组---------------------


首先使用BeanShell Sampler给全局变量赋予初始值${__setProperty(newswitch,1,)};


然后使用If Controller作为操作的父类,条件为"${__P(newswitch,)}"=="1";


最后使用BeanShell Sampler(父类线程组)给全局变量赋值${__setProperty(newswitch,2,)};,下一个顺序执行线程组的If ?Controller条件;第二或N顺序执行线程组---------------------


1.使用BeanShell Sampler(父类线程组),定义一个局部变量vars.put("whileswitch","1");


2.使用While Controller作为If Controller的父类,条件为${__javaScript("${__P(whileswitch,)}"!="0")} ;


3.使用If Controller作为操作的父类,条件为"${__P(newswitch,)}"=="2";(值根据第几个顺序而变化,第二个是2,第三个是3。。。)


4.在If Controller下建立子类BeanShell Sampler给局部变量赋值vars.put("whileswitch","0");,结束While Controller;给全局变量赋值${__setProperty(newswitch,3,)};,下一个顺序执行线程组的If ?Controller条件,如果没有下一个顺序执行线程组给全局变量赋予初始值${__setProperty(newswitch,1,)};。



友情链接: