LoadRunner用户验证码和验证码使用脚本
2016-06-23 14:46
204 查看
Action() { //定义Md5变量用来存放使用md5加密后的字符串 char Md5[33]; //存放包含用户登录信息的URL char str[174]; //存放用户账户信息 char str1[92]; //存放当前时间 int t1; int a; char Message[50]; //把持续的秒数放入t1变量中 t1=time(); //把t1中存储的值赋值给time1变量 lr_save_int(t1,"time1"); //使用lr_eval_string函数获取变量的值,并把值赋值给str1变量 strcpy(str1,lr_eval_string("account={code}.pt&appId=1002&code={code}&gameId=89&ip={用户IP}×tamp={time1}cb29fca01dbtk7a29np0lp59yl6hd258")); lr_output_message(str1); //把str1进行md5加密,并把加密完的字符串赋值给Md5变量 GetMd5FromString(str1,Md5); //重新生成并包含sign”=“Md5中包含的值的URL字符串放入str变量中 sprintf(str,"URL=http://{服务器IP}/api/Character/ValidateCode?account={code}.pt&appId=1002&code={code}&gameId=89&ip={用户IP}×tamp={time1}&sign=%s",Md5); //进行手动关联,获取动态信息,并把动态信息保存到Message变量中 web_reg_save_param("Message", "LB/IC=Message\":\"", "RB/IC=\"", "Ord=1", "Search=Body", "RelFrameId=1", LAST); //开始验证事务 lr_start_transaction("验证成功"); lr_start_transaction("验证失败"); //获取验证码数据包 web_url("ValidateCode", str,//获取验证码URL链接 "Resource=1", "RecContentType=application/xml", "Referer=", "Snapshot=t5.inf", LAST); //使用lr_eval_string函数获取变量{Message}的值,并把值赋值给Message变量 strcpy(Message,lr_eval_string("{Message}")); //输出Message信息 lr_output_message(Message); //调用strcmp函数把Message中存储的值和“success”进行比较 //把比较结果赋值给变量a a=strcmp(Message,"success"); //判断a的值,如果a==0则“success” if (a == 0) { //结束验证成功事务了,并自动设置事务状态(PASS or FAIL) lr_end_transaction("验证成功", LR_AUTO); //把持续的秒数放入t1变量中 t1=time(); //把t1中存储的值赋值给time1变量 lr_save_int(t1,"time1"); //使用lr_eval_string函数获取变量的值,并把值赋值给str1变量 strcpy(str1,lr_eval_string("account={code}.pt&appId=1002&code={code}&gameId=89&ip={用户IP}×tamp={time1}cb29fca01dbtk7a29np0lp59yl6hd258")); lr_output_message(str1); //把str1进行md5加密,并把加密完的字符串赋值给Md5变量 GetMd5FromString(str1,Md5); //重新生成并包含sign”=“Md5中包含的值的URL字符串放入str变量中 sprintf(str,"URL=http://{服务器IP}/api/Character/UseCode?account={code}.pt&appId=1002&code={code}&gameId=89&ip={用户IP}×tamp={time1}&sign=%s",Md5); //进行手动关联,获取动态信息,并把动态信息保存到Message变量中 web_reg_save_param("Message", "LB/IC=Message\":\"", //左边界开始为“Message“:”” "RB/IC=\"",//右边界为““” "Ord=1", "Search=Body", "RelFrameId=1", LAST); //开始使用事务 lr_start_transaction("使用成功"); lr_start_transaction("使用失败"); //获取验证码数据包 web_url("ValidateCode", str,//获取验证码URL链接 "Resource=1", "RecContentType=application/xml", "Referer=", "Snapshot=t5.inf", LAST); //使用lr_eval_string函数获取变量{Message}的值,并把值赋值给Message变量 strcpy(Message,lr_eval_string("{Message}")); lr_output_message(Message); //调用strcmp函数把Message中存储的值和“success”进行比较 //把比较结果赋值给变量a a=strcmp(Message,"success"); //判断a的值,如果a==0则“success” if (a == 0) { //结束使用成功事务了,并自动设置事务状态(PASS or FAIL) lr_end_transaction("使用成功", LR_AUTO); } else{ //结束使用失败事务了,并自动设置事务状态(PASS or FAIL) lr_end_transaction("使用失败", LR_AUTO); } } else { //结束验证失败事务了,并自动设置事务状态(PASS or FAIL) lr_end_transaction("验证失败", LR_AUTO); } return 0; }
该脚本使用md5加密,需要使用md5.h文件
要在脚本中添加md5.h文件,globals.h文件
并且要在globals.h中添加“include “md5.h””
相关文章推荐
- SpringMVC总结之配置
- SpringMVC中使用patchca生成验证码
- MD5加密和解密,可作为工具类模块保存
- 1033 - Generating Palindromes
- 德·摩根定律的验证(De Morgan’s Laws)
- 开发App启动页后的3秒广告页思路 ,一行代码接入
- Android Studio代码折叠
- 设计模式之工厂方法和抽象工厂
- 关于Gson 解析出问题
- GreenDao数据库的使用
- mysql安装后优化
- javascript 面向对象特性之继承
- jdk环境变量
- HTML5移动端图片上传模块
- 微信web开发者工具
- git-flow学习
- luarocks学习
- JavaScript对象操作之浅复制
- python day02字典的神奇
- JavaScript对象表示方式