LoadRunner脚本实例来验证参数化的取值

LoadRunner脚本实例来验证参数化的取值

SINM {3]!G0问题提出:  主要想试验下,在Controller中,多个用户,多次迭代中参数的取值.51Testing软件测试网([‘H5f,d)[jUh

:o$F$kY+sO/y"Yr5S0方法:51Testing软件测试网$_v.sR$tS*T)}

TJS]#v3u%bi"?!}0脚本:  我把取到的参数值和对应的VuserID记录下来保存到一个文件中,下面是例子的脚本

X-n)SI:J#t:v:YM‘v#X0

long fileopen;51Testing软件测试网sqWc|0M

char *filename =  "C:\\temp\\params.log";

ol!Ml(X,L n‘P0

51Testing软件测试网7]Qa-v,D7ix

vuser_init()51Testing软件测试网O:^K1k2U]D5v-}

{51Testing软件测试网K,z4P;J UsK

H!Df*PB

      if ((fileopen =  fopen(filename,"a+")) == NULL) {

o_mS5r0f*Kz:l0

             lr_error_message  ("file isn‘t open,path=%s",filename);51Testing软件测试网9k(L} d%f

             return  0;51Testing软件测试网6g2`a+}*h,T

      }51Testing软件测试网6Ja-a(R#AT*y#U)a

      return  0;51Testing软件测试网sPi)y(C  N

}

#C4bW$A‘B@cDg w0

Action()51Testing软件测试网BS!rwffr w O

{

0lGQhNuY‘`EE0

      int  id,scid;51Testing软件测试网XV"b;Vsc;e

      char  *vuser_group;

2s  kV#h+[Db~1r0

3GE8^L

      //typedef long  time_t;

K$Q;G  u[email protected]

      //time_t  t;51Testing软件测试网UI  BUI

      long  t;51Testing软件测试网F  iya1}U.lT

      char *a =  "{aaa}";

S8nVRrQ  @$QE?0

      char *b =  "{bbb}";

(eu s ]$of  v*BCH_2Y0

51Testing软件测试网jc%M+v

  lr_whoami(&id,  &vuser_group, &scid);51Testing软件测试网?eFk}(Q

51Testing软件测试网  PBi[+c r$s N

51Testing软件测试网z KL$bK__)l8v

   fprintf(fileopen,"%d,%s,%s,%s",id,lr_eval_string  (a),lr_eval_string (b),ctime(&t));51Testing软件测试网2~7M k6S }F

esXi~/p_9?8L?k^

      return  0;

W]jnv.n0

}51Testing软件测试网fb:R8MV@"f

vuser_end()

6aCV9iz)]N6TI0

{51Testing软件测试网r(zbMY{

      fclose(fileopen);

Jd8EOt0

      return  0;51Testing软件测试网7n  x]3s3k(j

}      

j2O#tj9V d2w0

51Testing软件测试网n:Q"DDNDUN

参数设置为:51Testing软件测试网8I] Z9w-J)QM

取唯一值,每次迭代更新。51Testing软件测试网gP U`C6DRR

51Testing软件测试网qAK:[email protected]Z9X

运行时设置的迭代次数为2。

+jb+f|3~%h_1]Q*r0

51Testing软件测试网u!c#Ty ~%WE‘\

场景的设置:51Testing软件测试网q,mk4J*Jf

虚拟用户数:5个

:? GY6uE0

运行模式:没有设置duration,选择的“Run until  complete”

;l)A&G{j6Iq}.lk0

完成后的日志文件params.log的内容如下:

4z;d!q)J1v0

1,a1,b1,Thu Jan 01 08:00:05 197051Testing软件测试网V"b6vY1h;n
1,a2,b2,Thu Jan 01  08:00:05 197051Testing软件测试网Sq F"t9j"dB_  v$l
10,a5,b5,Thu Jan 01 08:00:05 197051Testing软件测试网8L$A C%[]2`+~3k
10,a6,b6,Thu Jan  01 08:00:05 1970
4o-[s(YN02,a3,b3,Thu  Jan 01 08:00:05 1970
lI#Gq,GYpV02,a4,b4,Thu Jan 01 08:00:05  197051Testing软件测试网7^doa!?c
30,a9,b9,Thu Jan 01  08:00:05 1970
$j ` m&?})X  ]%i030,a10,b10,Thu Jan 01 08:00:05 1970
0~0a4VQ$^X4_3XG021,a7,b7,Thu Jan 01 08:00:05  197051Testing软件测试网$QdfM0V
21,a8,b8,Thu  Jan 01 08:00:05 1970

)mMv2K~2Lq z,jg0

51Testing软件测试网7Z1u(vNOx7p"p8siV

从生成的日志文件中可以看到VuserID分别为1,2,10,21,30

d v[|m*{0

第一次迭代取参数分别为1,3,5,7,951Testing软件测试网 [email protected]!So+Z

第二次迭代取参数分别为2,4,6,8,1051Testing软件测试网}zK+Rp7`%o

那试验的结果就是每个Vuser取参数的时候相同的Vuser在多个迭代中取的是连续的。不同的Vuser第一个的取值是计算了迭代次数后的那个顺序上的值。

时间: 2024-12-27 06:57:51

LoadRunner脚本实例来验证参数化的取值的相关文章

jmeter参数化随机取值实现

jmeter能用来做参数化的组件有几个,但是都没有随机取值的功能,遇到随机取值的需求怎么办呢? 突发奇想,可以用函数__CSVRead()来实现: __CSVRead() CSV file to get values from | *alias:表示要读取的文件路径 CSV文件列号| next| *alias:表示当前变量读取第几列数据,注意第一列是0: 由此可见我们只需将参数化数据在csv中横向排列,然后用随机函数__Random()指定文件序列号即可. ${__CSVRead(D:\t.tx

【shell脚本 实例一】轮询取挂载目录下被更新的文件

实例一:监测挂载目录下的指定文件状态,一秒轮询,文件被更新即被取到指定目录. 1 ######################################################################### 2 # File Name: getshare.sh 3 # Author: zoukch 4 ######################################################################### 5 #!/bin/bash

loadrunner从数据库中取值进行参数化

LoadRunner提供两种参数化取值方式,一种是手动编辑,另一种就是通过连接数据库取值.一般在大型业务并发压力测试时,数据量肯定也都是非常大的,所以手动去编辑就不切实际了,这时用连接数据库的功能就方便了很多. 所需软件: mysql-connector-odbc-5.3.12-win32.msi 安装此软件时,如果提示: 需要先安装:vcredist_x86.exe. 以下以mysql数据库取值为例,进行操作步骤介绍及截图. 1.Parameter List对话框中点击Data Wizard按

loadrunner脚本中写入脚本输出log到外部文件,分析参数取值方式

loadrunner脚本中写入脚本输出log到外部文件,分析参数取值方式 分类: 心得 loadrunner 我的测试 2012-04-01 12:52 2340人阅读 评论(0) 收藏 举报 脚本loadrunnerstreamfilestring测试 .controller中运行脚本时无法查看输出log,可以手动写入代码输出log到外部文件,通过查看该log获得相关信息: 以下脚本是为了分析场景中多用户运行时参数列表如何取值(id,groupid,sid,uname),设置集合点后通过查看时

Loadrunner之HTTP接口测试脚本实例

Loadrunner之HTTP接口测试脚本实例 接口测试的原理是通过测试程序模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做出处理然后再把应答报文发送给客户端,客户端接收应答报文结果与预期结果进行比对的过程,接口测试可以通过Java发送 http post或者get请求来实现,也可以通过loadrunner来实现,今天介绍下loadrunner接口自动化测试实例: loadrunner接口测试原理是web_submit_data函数发送post或者get请求,将测试用例数据进行

LoadRunner关联函数的脚本实例--如何操作关联参数

LoadRunner关联函数的脚本实例--如何操作关联参数 这几天一直在学习LoadRunner的VuGen编程,今天想对关联函数web_reg_save_param做详细的试验和研究: ~f6p q+Z  RM0 a6_%_+vF9Ws\w&S0 问题提出:如何对关联的数据进行字符串操作.下面使用了LoadRunner自带的订票例子为例,进行了这方面的试验.假设我要关联的数据是由几个字符串组成的.如何使这些字符串组成一个参数,供我后面的函数使用?51Testing软件测试网.VZR(`D&quo

LoadRunner参数化取值与连接数据库

LoadRunner参数化取值与连接数据库 LoadRunner在使用参数化的时候,通常都是需要准备大数据量的,也因此LoadRunner提供两种参数化取值方式,一种是手动编辑,另一种就是通过连接数据库取值.一般在大型业务并发压力测试时,数据量肯定也都是非常大的,所以手动去编辑当然就不切实际了,还好有连接数据库的功能,所以就方便了很多.不过提供连接数据库的功能到不是为了方便去取数据,而更重要的应该是借用数据库的造数据功能,通过简单的sql语句,便可以完成大量可复用的数据,这就是数据库的强大之处.

Loadrunner手动编写包含检查点、关联等元素的脚本实例

一.前言: 本文适合初学者,包含很多细节,也作为自己的备忘.有不准确之处,欢迎指正. 二.准备: 1.以虚拟机中的Linux系统作为服务器,开启bugfree服务. 2.以fiddler作为抓包工具,辅助脚本开发. 3.脚本流程:bugfree登录--创建bug--解决bug. 三.实现过程: 3.1 脚本主体 创建空白脚本后,结构如下图,压力测试中一般我们将登录单独放在vuser_init中.这里为了整个流程更清晰,脚本全部写在Action中. 值得注意的是,我们设置脚本迭代次数,只对Acti

loadrunner 脚本开发-参数化之将内容保存为参数、参数数组及参数值获取

转自:http://blog.sina.com.cn/s/blog_13cc013b50102v49c.html(查看原文) 在VuGen中默认使用{}的字符串称为参数 注意:参数必须在双引号中才能用 将字符串保存为参数 lr_save_string("string you want to save", "arg_name"); 举例:用参数来替换需要打开的url链接 Action2() { lr_save_string("http://172.25.75