这几天一直在学习
LoadRunner
的
VuGen
编程,今天想对关联函数
web_reg_save_param
做详细的试验和研究:
问题提出:如何对关联的数据进行字符串操作。下面使用了
LoadRunner
自带的订票例子为例,进行了这方面的试验。假设我要关联的数据是由几个字符串组成的。如何使这些字符串组成一个参数,供我后面的函数使用?
解决方法:
使用多个关联函数,对关联参数进行字符串操作,最后把生成的字符串保存成一个参数,供下面调用该参数的函数使用。
脚本如下:
Action()
{
int number1,number2;
char session11[1000];
char string[1000];
int length;
char *stringtemp;
//char session22[20];
web_reg_save_param("session1","LB=name=userSession value=","RB=.","Ord=ALL",LAST);
web_reg_save_param("session2","LB=.","RB=<table border=0><tr><td> </td>","Ord=ALL",LAST);
web_url("WebTours",
"URL=http://127.0.0.1:6080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
strcpy(string,"");
strcpy(string,lr_eval_string("{session1_1}"));
//strcpy(session1,"");
sprintf(session11,"{session2_1}");
strcat(string,".");
length= strlen(lr_eval_string(session11));
length=length-2;
number1=atoi(lr_eval_string("{session1_count}"));
number2=atoi(lr_eval_string("{session2_count}"));
lr_output_message("%d,%d",number1,number2);
//lr_output_message("%d",length);
stringtemp=lr_eval_string(session11);
strncat(string,stringtemp,length);
//srcat(string,session11);
lr_save_string(lr_eval_string(string),"session");
lr_output_message("%s",lr_eval_string("{session1_1}"));
lr_output_message("%s",lr_eval_string("{session2_1}"));
web_submit_data("login.pl",
"Action=http://127.0.0.1:6080/WebTours/login.pl",
"Method=POST",
"RecContentType=text/html", "Referer=http://127.0.0.1:6080/WebTours/nav.pl?in=home",
"Snapshot=t2.inf",
"Mode=HTML",
ITEMDATA,
"Name=userSession", "Value={session}", ENDITEM,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=JSFormSubmit", "Value=on", ENDITEM,
"Name=login.x", "Value=50", ENDITEM,
"Name=login.y", "Value=10", ENDITEM,
LAST);
lr_output_message("%s",lr_eval_string("{session}"));
return 0;
}
有两个关联的参数,session1
和
session2
,最后生成
session
,被
web_submit_data
函数调用。蓝色部分是需要特别注意的地方。
脚本编写调试过程中遇到的问题和解释:
1.
web_reg_save_param
()中如果没有指定
Ord=ALL
的话,默认是取的第一个符合左右边界的值,这样我们使用关联的参数时可以直接使用变量名,如
session1
2.
web_reg_save_param
()中如果指定
Ord=ALL
的话,会生成一个数组,这样想取某个参数的话,需要使用的参数名需要加
_
和数组中的位置
,
如例子中取第一个
session1_1
,
如果这时候仍然用
session1,
是取不到参数的值的
.
3.
顺序问题
:
对关联参数相关的操作
,
需要放到包含该关联数据的请求函数之后
,
如上紫色部分代码用到关联的参数的语句
,
都需要放到
web_url()
之后
,
否则也不会取到关联的数据
4.注意lr_eval_string()函数和lr_save_string()函数的用法.
.
分享到:
相关推荐
loadrunner关联函数[归类].pdf
linux下的lodrunner负载机,亲测可用。loadrunner-11-load-generator
loadrunner-11-load-generator.iso
LoadRunner压力测试实例,希望能值得大家多一点参考
LoadRunner常用函数 LoadRunner常用函数 LoadRunner常用函数 LoadRunner常用函数
loadrunner关联函数.pdf
Loadrunner学习---脚本编写系列 希望对大家有所帮助。
loadrunner关联函数[参照].pdf
loadRunner入门教学文档,内含详细的操作指南,命令函数作用详解。
loadrunner性能测试工具General-Options参数详解-Vugen中General Option是用来设置通用的一些基础选项的。
loadrunner11,性能自动化测试工具,提供http web,web service等多种协议的性能测试,帮助大家快速掌握性能工具使用,并能在项目中实施性能测试。
这两种方法各有所长,手工的比较保险,但是需要自己去找关联函数的位置和需要关联的参数,然后一一替代,自动关联就比较简单了,找到关联参数的特征,运行的时候自动关联就是了,但有时候自动关联不是很完整,可能有...
性能测试的工具loadrunner: 1.LoadRunner之—Block 2.《LoadRunner 没有告诉你的》之一——描述性统计与性能结果分析 3《LoadRunner 没有告诉你的》之二——描述性统计与性能...10.LoadRunner之--关联(correlation)
NULL 博文链接:https://epan-chen.iteye.com/blog/370981
自动关联 loadrunner参数化,介绍了如何利用loadrunner对相关联的业务点进行配置,然后进行性能测试
在LoadRunner最新版本新增了在测试中注入中断事件的功能,为您的性能脚本提供更多价值。 LoadRunner Professional 2023 是业界首个可以同时支持对同时部署在私有云、公有云等复杂环境中的应用进
这里介绍了loadrunner脚本中能用到的常用函数,内容丰富,欢迎下载
LoadRunner_函数大全,很有帮助,中文的
第一章 Loadrunner vugen录制与脚本开发 1-1 脚本的录制和优化 1-2 换个角度理解关联 1-3 手动关联排错实战 1-4 事物 1-5 检查点 1-6 文本参数化 1-7 数据库参数化 1-8 补充方法函数 1-9 脚本编写中需要注意的事项 1...