
LoadRunner
sun_com1984
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
自定义监控程序
static int interation;Action(){char *p;//请自定义参数文件paramp=“value={param}”;//在vuser中展示参数值lr_output_message(“para is :%s”,lr_eval_string(“{param}”));lr_think_time(10);//在controller中展示当前参原创 2015-09-11 17:55:49 · 344 阅读 · 0 评论 -
LR中BMECIDClosing增加关闭脚本
在LR录制脚本的时候一般每一个产生的CID都会有一个类似于以下的关闭脚本。web_custom_request("business.action_16", "URL=http://{httpserver}/kbs/business.action?BMECID={ BMECID15258}&BMECIDClosing={ BMECID15258}", "Method=GET",原创 2015-09-15 15:07:39 · 451 阅读 · 0 评论 -
LR中的一些技巧(首次修改密码、同一账号重复登录、验证码处理)
USM验证码处理如果程序本身屏蔽了该功能,那么就不需要处理,如果没有屏蔽,那么首先在系统参数(Item_ID= 901005设置为否)中关闭使用此项功能。然后在录制脚本登录时,任意输入4位即可。脚本处理时也无需修改。同一账号不可重复登录功能处理一般在执行完成测试后,登录账号大都不能根据录制脚本进行正常退出,导致再次执行脚本时报错,因为此时登录就属于重复登录,登录后会多出一个处理页面,而原创 2015-09-15 15:12:16 · 4543 阅读 · 0 评论 -
LR数据库访问封装的API使用指导书4
获取调用存储过程后参数的值intDbCmd_GetParamValueByName(char* strParamName, char*strSaveParam)检查字段的值是否相同int DbSet_CheckFieldValueByName(char *strFieldName,char *strValue, int iRowIndex)原创 2015-09-15 14:24:43 · 354 阅读 · 0 评论 -
LR数据库访问封装的API使用指导书7
strParamType填入的值以及对应的ORACLE的类型如下表所示: ORACLE的类型strParamType的值意义varchar (?)VT_VARCHAR变长字符串型char (?)VT_CHAR定长字符串型number原创 2015-09-15 14:33:35 · 333 阅读 · 0 评论 -
LR中时间戳处理
还要一些其他的场景如查询页面的打开,都需要考虑。原则就是只要产生一个CID,必须有一个对应的关闭动作。这个要在场景中多考虑。为了使得数据的获取不从缓存读取,而中服务器读取,在每个请求中增加了时间戳,所以性能测试脚本中的时间戳也要进行参数化,可以通过以下参数获取:web_save_timestamp_param("BMETs1326549477093", LAST);小技巧原创 2015-09-15 15:10:31 · 1696 阅读 · 0 评论 -
记录BVT自动化测试结果的函数WriteBVTLog
void WriteBVTLog(char *strLogFilePath,char *strTestCaseName, char *strInfo) 函数功能:将自动化测试结果写入日志文件中。输入参数:strLogFilePath log文件的路径 strTestCaseName测试用例的名称原创 2015-09-15 14:39:46 · 399 阅读 · 0 评论 -
LoadRunner脚本回放问题及解决5
5.LoadRunner不执行检查方法:在录制Web协议脚本中添加了检查方法Web_find,但是在脚本回放的过程中并没有执行。 错误现象:在脚本中插入函数Web_find,在脚本中设置文本以及图像的检查点,但是在回放过程中并没有对设置的检查点进行检查,即Web_find失效。 错误分析:由于检查功能会消耗一定的资源,因此LoadRunner默认关闭了对文本以及图像的检查,所以在设置检原创 2015-09-14 16:49:15 · 644 阅读 · 0 评论 -
LR数据库访问封装的API使用指导书2
功能API声明打开数据库连接int Db_Open(char *strDataSource,char *strUserName, char *strPassword)关闭数据库连接int Db_Close()执行添加、删除、更新等SQL语句int DbCmd_ExecuteModSQL原创 2015-09-15 14:23:05 · 338 阅读 · 0 评论 -
LR数据库访问封装的API使用指导书1
下表1列出了adosql.dll中提供的API函数,这些函数的使用需要按照一定的顺序使用,遵守以下几条原则,如下所示:在使用数据库前,需要打开数据库连接,使用Db_Open函数。在使用完数据库后,需要关闭数据库连接,使用Db_Close函数。在检查、获取字段的值之前,需要得到一个结果集,即DbSet_GetFieldValueByName和DbSet_CheckFieldValueBy原创 2015-09-15 14:21:05 · 367 阅读 · 0 评论 -
LR数据库访问封装的API使用指导书5
int DbCmd_ExecuteQuerySQL(constchar *strQuerySql)函数功能:执行查询数据库记录的SQL语句。输入参数:strQuerySql 数据库查询SQL语句输出参数:无返回值 :int -1,表示失败; >=0,表示成功,为查询的结果集的行数 int DbCmd_ExecuteSQLFile(ch原创 2015-09-15 14:26:43 · 315 阅读 · 0 评论 -
关于LR监视linux的说明2
里面内容的意思在这里就不说了!网上有具体解释, 我们这里需要修改的是/etc/xinetd.d/下的三个conf文件 rlogin ,rsh,rexec 这三个配置文件,打这三个文件里的disable = yes都改成 disable = no ( disabled 用在默认的 {} 中 禁止服务)或是把# default: off都设置成 on 这个的意思就是在xinetd启动的时候原创 2015-09-15 15:45:57 · 425 阅读 · 0 评论 -
LR数据库访问封装的API使用指导书9
strParamDirect填入的值如下表所示:strParamDirect的值 意义IN 输入参数OUT 输出参数INOUT 输入、输出参数示例:DbCmd_CreateParameter("paraIn", "VT_INT", "IN", "13579");DbCmd_CreateParameter("paraOut1", "VT_INT", "OUT", "0")原创 2015-09-15 14:36:28 · 306 阅读 · 0 评论 -
LR中替换变量小技巧
BMECID的替换可以手工替换和自动替换,两种方法都可以。手动替换的好处就是可以查看每个BMECID使用的位置,由此可以正确根据业务场景适当调整BMECIDClosing的位置。小技巧:LR中手动替换可以使用CTRL+C复制获取到的BMECID参数名称,如{BMECID15258},然后在鼠标选中待替换的实际BMECID,如15258,CTRL+F, Entre, CTRL+V, F3,原创 2015-09-15 15:03:10 · 965 阅读 · 0 评论 -
API使用示例vuser_end
vuser_end(){ //本测试用例的环境重置工作可在此完成 //执行一个删除语句 if (-1 ==DbCmd_ExecuteModSQL("DELETEFROM zlf_info WHERE name = 'ketty'")) { WriteBVTLog("c:\\BVT","adotes原创 2015-09-15 14:43:33 · 338 阅读 · 0 评论 -
API使用示例Action
Action(){ char strName[128] = {0}; //执行一个查询语句 if (-1 ==DbCmd_ExecuteQuerySQL("SELECT* FROM zlf_info")) { WriteBVTLog("c:\\BVT","adotest", "FAIL");原创 2015-09-15 14:42:58 · 432 阅读 · 0 评论 -
return 0
int c=0;Action(){c=c+1;if(c==3){return 0;//注释这个后面会发生什么呢?}lr_output_message(“sum=%d”,c);//ruturn 0;}//设置迭代次数5,结束本次迭代,进入下次迭代原创 2015-09-11 17:51:27 · 357 阅读 · 0 评论 -
结构体
struct student{ int num;char name[10];float socre;};Action(){int i;struct student stu[2]={{01,”jack”,100},{02,”tom”,80}};for(i=0;i{lr_output_message(“第%d个学生信息:”,i+1);lr_output_mess原创 2015-09-11 17:50:04 · 288 阅读 · 0 评论 -
函数应用-web_add_filter
Action(){//使用该函数对URL进行过滤web_add_filter(“Action=Exclude”,”URL=http://imail.huawei.com/”,LAST);lr_think_time(10);web_url(“imail”,”URL=http://imail.huawei.com/”,“Mode=HTML”,LAST);Web_url(“b原创 2015-09-11 17:52:54 · 393 阅读 · 0 评论 -
参数化
lAction()l{web_url(“{url}”,”URL={url}”,LAST);llr_output_message(lr_eval_string(“{url}”));llr_think_time(5);lweb_url(“{url}”,”URL={url}”,LAST);llr_output_message(lr_eval_string(“{url}”));lr原创 2015-09-11 17:44:47 · 318 阅读 · 0 评论 -
参数化-图片
图片:http://www.google.comhttp://www.baidu.comhttp://www.oracle.com By number : 1Select next row: SequentialUpdate value on: Each iter ation原创 2015-09-11 17:48:10 · 727 阅读 · 0 评论 -
LoadRunner脚本回放问题及解决1
在运行脚本回放过程中,有时会出现错误,这在实际测试中是不可避免的,毕竟自动录制生成的脚本难免会有问题,需要运行脚本进行验证,把问题都解决后才加入到场景中进行负载测试。下面结合常用的协议(如Web、Web Services协议)录制的脚本进行回放时出现的问题介绍一下解决的方法。 需要注意的是,回放脚本时出现的错误有时是程序自身的原因导致的,因此在解决脚本回放问题前必须保证程序录制出的脚本是原创 2015-09-14 16:38:03 · 649 阅读 · 0 评论 -
LoadRunner脚本回放问题及解决2
错误现象 2:Action.c(81):Continuing after Error -27498: Timed out while processing URL=http://172.18.20.70:7001/workflow/bjtel/leasedline/ querystat/ subOrderQuery.do 错误分析:这种错误常常是因为并发压力过大,服务器端太繁忙,无法及时响应原创 2015-09-14 16:41:17 · 404 阅读 · 0 评论 -
LoadRunner脚本回放问题及解决3
3.LoadRunner HTTP服务器状态代码:在录制Web协议脚本回放脚本的过程中,会出现HTTP服务器状态代码,例如常见的页面-404错误提示、-500错误提示。 错误现象1:-404 Not Found服务器没有找到与请求URI相符的资源,但还可以继续运行直到结束。 错误分析:此处与请求URI相符的资源在录制脚本时已经被提交过一次,回放时不可再重复提交同样的资源,而需要更改提交原创 2015-09-14 16:46:29 · 693 阅读 · 0 评论 -
LoadRunner脚本回放问题及解决4
4.LoadRunner请求无法找到:在录制Web协议脚本回放脚本的过程中,会出现请求无法找到的现象,而导致脚本运行停止。 错误现象:Action.c(41): Error -27979: Requested form. not found [MsgId: MERR-27979] Action.c(41): web_submit_form. highest severity level原创 2015-09-14 16:48:27 · 709 阅读 · 0 评论 -
LR数据库访问封装的API使用指导书6
intDbCmd_CreateParameter(char*strParamName,char*strParamType, char* strParamDirect, char*strParamValue)函数功能:执行SQL脚本文件。输入参数:strParamName 参数的名称,和数据库中的保持一致 strPara原创 2015-09-15 14:29:57 · 381 阅读 · 0 评论 -
关于LR监视linux的说明
1 准备工作首先,监视Linux一定要有rstatd这个守护进程,有的Linux版本里也有可能是rpc.rstatd这里只是名字不同而已,功能是一样的。 一般来说LINUX需要下载一个包才有这个服务,包名字是rpc.rstatd-4.0.1.tar.gz. 这是一个源码,需要编译。下载并安装rstatdtar -ivh rpc.rstatd-4.0.1.tar.gz./c原创 2015-09-15 15:44:48 · 409 阅读 · 0 评论 -
LR数据库访问封装的API使用指导书8
number (?, ?) 自定义长度的数字类型,依据不同数据长度,使用不同的值 VT_I2 短整型,2个字节 VT_I4 整型,4个字节 VT_R4 浮点型,4个字节 VT_R8 双精度型,8个字节date VT_DATE 日期/时间类型long VT_VARCHAR 变长字符串型smallint VT_I2 短整型,2个字节integer VT_INT 整型,4原创 2015-09-15 14:34:37 · 351 阅读 · 0 评论 -
API使用示例vuser_init
下面是一个在LR中使用这些API的示例,供参考,在使用这些API之前,需要将adosql.dll拷贝到LR的安装目录的bin目录下。vuser_init(){ //加载adosql.dll动态库 lr_load_dll("adosql.dll"); //打开数据库的连接 if (-1 == Db_Open("BOSSDEV"原创 2015-09-15 14:41:57 · 507 阅读 · 0 评论