手动编写loadrunner脚本

1. Loadrunner基础知识

  • Lr常用的函数
  • Lr定义变量
  • Lr参数化
  • .....

2. 脚本编写

2.1 定义接口
 //定义接口url
 char *interface_url;
 lr_save_string("http://127.0.0.1","interface_url");

char : 定义一个char类型的变量来存储url
lr_save_string : lr_save_string函数主要是将程序中的常量或变量保存为lr中的参数

2.2 编写事务

从登陆开始吧。

//登录事务
lr_start_transaction("用户登录");  
lr_rendezvous("login");

web_custom_request("login",
       "Url={interface_url}",       //使用{}引用参数
       "Method=POST",               //HTTP方法:POST 或 GET  
       "Mode=HTTP",                 //记录模式:HTML 或 HTTP
       "EncType=application/json",                //编码类型
       "RecContentType=application/json",                          //内容类型                 
       "Body={\"mobile\":\"13900009999\",\"pwd\":\"123456\"}",     //请求body
        LAST);

lr_end_transaction("用户登录",LR_AUTO); 

Loadrunner中关于http请求的函数很多,常见如

  • web_url
  • web_custom_request
  • web_image
  • web_add_cookie
  • web_add_header

web_custom_request函数允许使用任何方法或主体创建自定义的HTTP请求,其使用范围更广。

其中,Body中,如果是json类型的,引号需要使用 \ 进行转义。其他类型的,直接跟=后面即可。

2.3 检查响应是否符合预期

通过web_reg_find,可以验证响应是否符合期望,如通过搜索文本字符串。

web_reg_find("Search=Body",
      "Text=user_id",
      "SaveCount=userId",
      LAST);
  • Search : 搜索字符串的搜索范围,如ALL、Body、Header
  • Text : 搜索的字符串
  • SaveCount : 匹配的数量,并存储在一个参数中
2.4 动态数据信息保存到一个参数
 //获取用户登录后响应数据user_token,并传给user_token
 web_reg_save_param("user_token",
      "LB=\"user_token\":\"",
      "RB=\"",
       "Ord=1",
       "Notfound=empty",
       "Search=Body",
       LAST);

  • LB 参数的左边界
  • RB 参数的右边界
  • Ord 匹配的序号位置,默认为1
  • Notfound 当没有找到边界时的处理选项,选项有:Notfound=error -
    Notfound=empty
  • Search : 搜索字符串的搜索范围,如ALL、Body、Header

例:(如下json)

{"mobile":"18900001234","password":"123456"}

匹配手机号,那么它的左边界为:\"mobile\":\",右边界为:\",\"password

备注: 引号需要用斜杠进行转义



作者:一直小鱼
链接:https://www.jianshu.com/p/8da36ae0963d
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

猜你喜欢

转载自blog.csdn.net/qq_27975799/article/details/80268796
今日推荐