脚本优化-场景中的参数化取值

by:授客 QQ1033553122

 

Action()

{

lr_eval_string("{NewParam}");

lr_eval_string("{NewParam}");

return 0;

}

参数设置:


 


举例说明

打开Tools>Create
Controller Scenario选项,弹出如下图,选中Manual
Scenario(手工场景),虚拟用户数为5个,其他选项使用默认

点击上图的OK,打开如下界面

Schedule设置

2、Run-Time
Settings->Log,打开日志

注意:

确保Log
options是Always
send message,并且选中Parameter
substitution,否则在场景日志中看不到参数取值的结果

3.确认测试结果目录。打开Results-
>Results Settings,设置生成的测试报告所在目录及对应的结果名。如下图

4.运行整个场景,单击Start
Scenario按钮或者按F5键。几秒中后脚本就执行完,到对应目录下,查看日志文件(也可以在场景中直接查看),文件名形式:脚本名_用户编号.log的形式。几个用户就会有几个文件,如果脚本出错,对应该用户的日志就不会生成。

步骤5:在Run
Logic中设置迭代次数2,然后运行脚本,接着看不同的取值方式在场景中的效果

注意:如果需要修改场景脚本执行的iteration,必须在Controller的Run-
time Settings中进行修改,而不能修改VuGen中的Run-time
Settings

顺序取值

随机取值

唯一取值

当选择Unique取值时,在Parameter
List里面会有一个新的选项,Allocate
Vuser values in the Controller,三种情形,分别按如下设置

运行结果:

更改参数配置,添加值:N,如下,再测试

运行结果:

说明:

1、在Unique这种选项下,虚拟用户之间的取值是不同的,并且遵守唯一性取值,如果用户分配不到该值,那么就提示错误!

2、Continue
in cycle manner:缺少参数值时,循环取值,特别要注意的是,仅在每个用户获取到的参数值范围内进行循环,见上述运行结果,比如Vuser2,获取到3个参数值,D,E,甲,第一次迭代,获取DE,第二次迭代,可获取的参数值仅有甲,还少一个,咋办?按策略,从头开始取,取D,这里的头不是从A开始的,而是分配Vuser2的参数值中的第一个,同理下面的Continue
with the last Value也不是从最后一个N开始的,而是分配给用户的参数值中的最后一个

3、Aclocate
X values for each Vuser:为每个用户分配X个参数值,例中,按上述的分配方式,可得到如下图,即每个用户分配到的具体参数

4、Automatically
allocate block size(自动分配块):检查一个脚本有多少次迭代,然后让用户根据迭代次数分配该迭代大小的数据块

更改参数配置如下,继续测试

运行结果:

最新文章

  1. X3850M2安装CertOS 7 KVM 2--Mount
  2. 学Android开发,入门语言java知识点
  3. Asp.Net IEnumerable,ICollection,IList,List区别
  4. MySQL行级锁,表级锁,页级锁详解
  5. HIbernate学习笔记(六) 关系映射之多对多
  6. [收藏转贴]构建RESTful风格的WCF服务
  7. java--线程状态
  8. oralce 获取自定义主键编码,有并发问题
  9. slowhttptest慢攻击工具介绍
  10. 06_Linux目录文件操作命令3查找命令_我的Linux之路
  11. 3、配置XShell上传文件
  12. Python3自定义日志类教程
  13. Hive为什么要启用Metastore?
  14. Sketch网页截屏插件设计开发
  15. SPI Flash Memory 芯片手册阅读
  16. Spring MVC之@RequestParam @RequestBody @RequestHeader 等详解<转>
  17. 在 myeclipse中进行连接sql server的测试
  18. ggplot 画 条形图
  19. 笔记-python -asynio
  20. 10g full join 优化

热门文章

  1. CSS Modules 与 scoped 的不一样
  2. Python文件操作与函数目录
  3. css、css3总结
  4. Ambari集群移动现有复制到另外地方或更改ip地址,导致各项服务组件上为黄色问号代表心跳丢失的解决方案(图文详解)(博主推荐)
  5. 项目ITP(二) 二维码 拿起你的手机装一装,扫一扫 【每日一搏】
  6. man statd(rpc.statd中文手册)
  7. [转]virtualBox实现主机和虚拟机相互ping通,配置静态IP地址
  8. 第一册:lesson thirty nine.
  9. C#函数返回值。
  10. element-ui el-input只显示下划线