JMeter场景实现 测试圈:217937505 欢迎加入!!!
2015-10-16 19:43
225 查看
最近有人问到JMeter的场景问题:
1.单个角色(比如业务员角色)的业务组成一个混合场景,业务比例如何控制?
2.多个不相干业务组成一个混合执行场景,需要他们独立执行,互不影响,在JMeter中如何实现?.
下面说点我的意见:
1.单角色的场景可以参见我的另一篇博文/article/8457014.html,应该能受到启发。
下面说说多个不相干业务混合场景的实现。
1.多业务脚本共存
下图是JMeter计划的面板,左边的树形结构中我们可以看到有三个线程组,每一个线程组是一个执行单元,在执行逻辑上是互不干扰的。
那么我们可以利用线程组来封装不同的业务,而且在维护时也比较清晰。
2.线程组的执行顺序
JMeter元件的执行顺序是顺序遍历测试计划的树形结构(类似于二叉树的中序遍历)。
下图中默认执行顺序是:线程组1------线程组2------线程组3,如果运行多次,则重复前面的顺序。
有的人会说了,按顺序执行的话,那同一时刻岂不是不能执行不同的业务场景?
您多虑了,记住我们是多线程执行,每个线程组中运行多个线程,执行时不同线程有快有慢,这样就形成交错。
![](http://img.blog.csdn.net/20151016195103689?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
在测试计划中有这样一项 “独立运行每个线程组(例如在一个组运行结束后启动下一个)”,这个选项选择后,是运行完线程组1之后再运行线程组2,
如果有多次执行,就运行完线程组1的所有迭代再运行线程组2,接着是线程组3。勾选此选项后是达不到同时运行多个不同业务场景要求的。
3.测试计划合并
JMeter提供了一个测试计划合并的功能,如下图这个功能菜单是【编辑】-【合并】,可以直接选择已经调试好的测试计划与当前测试计划合并,
从而组成一个多线程组的新的测试计划。
![](http://img.blog.csdn.net/20151016203950578?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
4.用控制器元件(建议使用IF控制器)来封装业务单元,并且分配不同业务比例。
这部分内容请参考本人另一篇博文:/article/8457014.html
1.单个角色(比如业务员角色)的业务组成一个混合场景,业务比例如何控制?
2.多个不相干业务组成一个混合执行场景,需要他们独立执行,互不影响,在JMeter中如何实现?.
下面说点我的意见:
1.单角色的场景可以参见我的另一篇博文/article/8457014.html,应该能受到启发。
下面说说多个不相干业务混合场景的实现。
1.多业务脚本共存
下图是JMeter计划的面板,左边的树形结构中我们可以看到有三个线程组,每一个线程组是一个执行单元,在执行逻辑上是互不干扰的。
那么我们可以利用线程组来封装不同的业务,而且在维护时也比较清晰。
2.线程组的执行顺序
JMeter元件的执行顺序是顺序遍历测试计划的树形结构(类似于二叉树的中序遍历)。
下图中默认执行顺序是:线程组1------线程组2------线程组3,如果运行多次,则重复前面的顺序。
有的人会说了,按顺序执行的话,那同一时刻岂不是不能执行不同的业务场景?
您多虑了,记住我们是多线程执行,每个线程组中运行多个线程,执行时不同线程有快有慢,这样就形成交错。
在测试计划中有这样一项 “独立运行每个线程组(例如在一个组运行结束后启动下一个)”,这个选项选择后,是运行完线程组1之后再运行线程组2,
如果有多次执行,就运行完线程组1的所有迭代再运行线程组2,接着是线程组3。勾选此选项后是达不到同时运行多个不同业务场景要求的。
3.测试计划合并
JMeter提供了一个测试计划合并的功能,如下图这个功能菜单是【编辑】-【合并】,可以直接选择已经调试好的测试计划与当前测试计划合并,
从而组成一个多线程组的新的测试计划。
4.用控制器元件(建议使用IF控制器)来封装业务单元,并且分配不同业务比例。
这部分内容请参考本人另一篇博文:/article/8457014.html
相关文章推荐
- 九度OJ 1017:还是畅通工程 (最小生成树)
- 九度OJ 1017:还是畅通工程 (最小生成树)
- ios动画
- linux命令-mv
- POJ派
- set方法和get方法
- navigationItem titleTextAttributes navigationBar的刷新
- Vmware下Linux如何ping通Windows
- Linux平台下如何看OS历史的性能数据
- ZOJ 3910 Market ZOJ Monthly, October 2015 - H
- composer安装fxp插件时候提示内存不足且没有交换空间的解决办法
- 系统调优之numa架构
- jQuery选择器总结
- 如何调试DLL组件
- Hadoop公平调度器指南
- 3DMAX导出插件的编写
- ASP.NET MVC View向Controller传值方式总结
- OpenCV中对Mat里面depth,dims,channels,step,data,elemSize和数据地址计算的理解
- 需求跟踪矩阵
- 【组合计数dp】UVA 11401 Triangle Counting