这几天一直在学习
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关联函数的使用可以帮助用户快速地处理web应用程序中的数据提取和参数传递。下面我们来详细地介绍LoadRunner关联函数的使用和优化。 一、LoadRunner关联函数的使用 LoadRunner关联函数可以通过 web_...
在这个场景中,我们将深入探讨`Web_reg_save_param()`函数的使用,它在LoadRunner中被广泛用于执行关联操作。 `Web_reg_save_param()`函数,简称为WRSP,允许测试者从响应中抓取动态生成的参数值。在提供的例子中,...
在LoadRunner中,关联函数(Correlation Function)扮演着至关重要的角色,它用于处理不同请求间的依赖关系,确保测试脚本能够正确地模拟实际用户的行为。 关联的用途主要在于从服务端返回的数据中提取并保存关键...
这两种方法各有所长,手工的比较保险,但是需要自己去找关联函数的位置和需要关联的参数,然后一一替代,自动关联就比较简单了,找到关联参数的特征,运行的时候自动关联就是了,但有时候自动关联不是很完整,可能有...
通过熟练掌握这些LoadRunner函数,测试人员可以编写出精确模拟用户行为、高效收集性能数据的脚本,从而有效地评估和优化系统的性能。在实际使用中,根据具体场景选择合适的函数组合,能够极大地提高测试的有效性和...
"Loadrunner 测试网页下载文件的脚本实例" Loadrunner 是一个功能强大且流行的性能测试工具,它...结论:在这个脚本实例中,我们使用 Loadrunner 下载文件的功能,演示了 Loadrunner 的强大脚本功能和多种函数的使用。
本文将深入探讨Loadrunner中Socket脚本参数化的两种主要方法,并通过实例进行详细解释。 ### 一、录制脚本后的参数化方法 #### 1.1 录制完成后的参数化步骤 当使用Loadrunner录制了一段Socket通信的脚本后,通常...
### LOADRUNNER .NET ADD-IN 编写的性能测试脚本实例解析 #### 一、概述 性能测试是软件测试中的一个重要环节,它旨在评估系统在压力条件下的表现,确保其能够在预期的工作负载下正常运行。LoadRunner 是一个广泛...
以下是关于LoadRunner函数的一些详细说明: 1. **LR函数:** - `lr_start_transaction`:此函数用于标记一个事务的开始,这对于性能分析至关重要,因为它定义了性能测试中的关键操作开始的时间点。 - `lr_end_...
本实例将深入探讨LoadRunner的基础操作和应用,帮助你快速掌握这一强大的测试工具。 1. **LoadRunner基础** - **工作原理**:LoadRunner通过模拟大量用户并发执行业务场景,对服务器施加负载,从而评估系统的性能...
命令行分析函数主要用于在脚本中读取命令行参数,这对于自动化脚本执行特别有用。 1. **lr_get_attrib_double/lr_get_attrib_long/lr_get_attrib_string**:分别用于检索脚本命令行中使用的double类型变量、long...
2. **关联函数**:LoadRunner提供了几种关联函数,其中`web_reg_save_param`是最常用的函数之一,用于在脚本中保存从服务器响应中提取的动态值到一个参数中。 3. **左边界与右边界**:在关联过程中,我们需要定义...
Loadrunner工具概述 4 工具简介 4 下载 4 安装 5 在windows下安装loadrunner 5 在liunx下安装Load Generator组件 6 LoadRunner主要组件 7 工作原理 7 LR自带实例 8 ...附录:LoadRunner常用函数 77
【LOADRUNNER8.1应用实例】 LoadRunner是一款由HP公司开发的企业级负载测试工具,主要用于测试应用程序在高负载下的性能、稳定性以及并发能力。它能够模拟成千上万的虚拟用户来对系统进行压力测试,帮助我们提前...
这些函数是LoadRunner脚本编写中的关键部分,熟练掌握它们可以帮助开发者编写出高效、准确的性能测试脚本,从而更有效地定位和解决问题,优化系统的性能。在实际应用中,结合命令行分析和其他LoadRunner功能,可以...