对于一个初学来说,因为自己不懂C语言,所以在LR里面更不知道如何去定义变量,也不知道如何把自带函数的值赋给变量,自己在网上找了很多资料,大多都是不全的,对于Loadrunner初学者来说还是很费劲的,于是自己就整理分享给大家。
先说说我的需求:
HTTP请求需要三个请求头,格式如下:
Source:value1
TimeStamp:value2
Sign:value1value2--MD5加密
//1.定义变量
//source暂时定义长一些,后面要用来拼接字符串的。
char source[30] = "value";
char *timestamp = NULL;
char *sign = NULL;
/*loadrunner有自带的时间戳函数,我们可以直接采用*/
//1.获取时间戳
lr_save_timestamp("time","DIGITS=13",LAST);
//2.将时间戳转换为字符串
lr_save_string(lr_eval_string("{time}"),"newtime");
//3.将获取到的时间戳字符串赋值给之前定义的变量timestamp
timestamp = "{newtime}";
//4.拼接字符串,将timestamp的值和source的值拼接在一起
//举例timestamp的值是123,那么使用以下方法,拼接出的字符串是 "value123"
strcat(source,lr_eval_string(timestamp));
//5.字符串MD5加密,MD5加密源码网上有很多,可以自己去下载
sign = MD5(lr_eval_string(source));
//这样完成了字符串拼接和MD5加密
/*
重要!重要!重要!
如果想把sign这个变量用在其他脚本的请求头里,一定要做下面这一步。
*/
lr_save_string(sign,"sign1");
//下面我们就可以将自己定义的sign这个变量用到其他脚本里了
//这个是请求头函数,这里面有些函数的用法可以自己去网上查找
web_add_header("Sign","{sign1}");