【转】Loadrunner变量定义
Loadrunner变量分为局部变量和全局变量。
1. 如何定义变量 在Loadrunner脚本中变量必须在开头声明。比如说,在Vuser_init/Action/Vuser_end定义变量,必须现在最顶端生命,后面才能使用。如果不这样,编译器是通不过的。
例如1: vuser_init()
{
int i=0;
char tmp[40];
char str[40]; ..... //使用变量}
{
int i=0;
char tmp[40];
char str[40]; ..... //使用变量}
2. 局部变量 就像C语言一样,变量有作用域范围,局部变量包含在函数或者Vuser_init/Action/Vuser_end内部,对于其他范围之外就不起作用了。
例子2: vuser_init()
{
char * str="test"; lr_output_message("str Value1: %s",str); return 0;} Action()
{
lr_output_message("str Value1: %s",str); return 0;} 由于Action中的变量str没有定义,所以编译报错。如果注释点这一行,运行,在控制台中打印出结果 3. 全局变量 若要跨越Vuser_init/Action/Vuser_end定义变量,则需要定义全局变量。定义方式有两种:
{
char * str="test"; lr_output_message("str Value1: %s",str); return 0;} Action()
{
lr_output_message("str Value1: %s",str); return 0;} 由于Action中的变量str没有定义,所以编译报错。如果注释点这一行,运行,在控制台中打印出结果 3. 全局变量 若要跨越Vuser_init/Action/Vuser_end定义变量,则需要定义全局变量。定义方式有两种:
1)定义在
globals.h文件中
例子3:#ifndef _GLOBALS_H
#define _GLOBALS_H//--------------------------------------------------------------------
// Include Files
#include "lrun.h"
#include "web_api.h"
#include "lrw_custom_body.h" //定义全局变量char * str="This is a test"; //--------------------------------------------------------------------
// Global Variables#endif // _GLOBALS_H 2)定义在Vuser_init/Action/Vuser_end外部 例子4: char * str="test"; vuser_init()
{ lr_output_message("str Value1: %s",str); return 0;} Action()
{
lr_output_message("str Value1: %s",str); return 0;
#define _GLOBALS_H//--------------------------------------------------------------------
// Include Files
#include "lrun.h"
#include "web_api.h"
#include "lrw_custom_body.h" //定义全局变量char * str="This is a test"; //--------------------------------------------------------------------
// Global Variables#endif // _GLOBALS_H 2)定义在Vuser_init/Action/Vuser_end外部 例子4: char * str="test"; vuser_init()
{ lr_output_message("str Value1: %s",str); return 0;} Action()
{
lr_output_message("str Value1: %s",str); return 0;
}
1.参数的赋值和取值
lr_save_string("hello world","param");
lr_eval_string("{param}");
2.变量到参数
int x;
char *y;
y="hello";
x=10;
lr_save_int(x,"param");
lr_save_string(y,"param1");
lr_eval_string("{param}");
lr_eval_string("{param1}");
3.变量读参数
char x[100];
x="{param}";
lr_save_string("hello world","param");
lr_eval_string(x);