手动编写loadrunner脚本

发表于:2017-9-07 15:48

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:一直小鱼    来源:51Testing软件测试网采编

  某款app,领导要求使用loadrunner对服务端进行压力测试。由于非web页面,无法采取录制方式,尝试手动编写脚本。
  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
  备注: 引号需要用斜杠进行转义
《2023软件测试行业现状调查报告》独家发布~

精彩评论

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号