使用LoadRunner发送json格式登陆参数后怎样获取登陆验证的token

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用LoadRunner发送json格式登陆参数后怎样获取登陆验证的token相关的知识,希望对你有一定的参考价值。

首先你要知道服务器开发人员开发接口的时候,Response数据做了什么样的返回值判断,一般服务接口人员,习惯:1、正常返回数据JSON;2、同样返回一个失败的结果json(可写可不写);不写的话就好办了,直接用发回结果判断如果,返回为0(有值)表成功登录,1侧反;如果写的话那就麻烦了,你要解析里面的返回值,函数为web_custom_request()! 参考技术A token如果是server返回的 就看Response数据 参考技术B 用关联函数取值

loadrunner设置参数

录制完脚本回放成功以后,要设置参数。设置参数的目的就是能对系统施加性能压力。通过不同的用户登陆后进行相同的操作,这样就可以尽可能的模拟出真实的情况。

       下面的展示的是录制的action的脚本

      

[cpp] view plain copy
  1. <p>/* ------------------------------------------------------------------------------- 
  2.  Script Title       :  
  3.  Script Description :  
  4.                          
  5.                          
  6.  Recorder Version   : 8859 
  7.    ------------------------------------------------------------------------------- */</p><p>vuser_init()  
  8. </p><p> web_url("index.jsp",   
  9.   "URL=http://10.135.27.24/ZZJYT/login/index.jsp",   
  10.   "Resource=0",   
  11.   "RecContentType=text/html",   
  12.   "Referer=",   
  13.   "Snapshot=t1.inf",   
  14.   "Mode=HTML",   
  15.   LAST);</p><p> web_submit_form("yanzheng.jsp",   
  16.   "Snapshot=t2.inf",   
  17.   ITEMDATA,   
  18.   "Name=username", "Value=<span style="color:#ff0000;">username</span>", ENDITEM,   
  19.   "Name=password", "Value=123456", ENDITEM,   
  20.   "Name=login", "Value=登录", ENDITEM,   
  21.   EXTRARES,   
  22.   "Url=/ext-3.1.0/resources/images/default/panel/corners-sprite.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  23.   "Url=/ext-3.1.0/resources/images/default/panel/top-bottom.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  24.   "Url=/ext-3.1.0/resources/images/default/panel/tool-sprites.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  25.   "Url=/ext-3.1.0/resources/images/default/panel/left-right.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  26.   "Url=/ext-3.1.0/resources/images/default/dd/drop-no.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  27.   "Url=/ext-3.1.0/resources/images/default/tree/s.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  28.   "Url=/ext-3.1.0/resources/images/default/tree/folder.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  29.   "Url=/ext-3.1.0/resources/images/default/tabs/tab-strip-bg.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  30.   "Url=/ext-3.1.0/resources/images/default/tree/arrows.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  31.   "Url=/ext-3.1.0/resources/images/default/tabs/tabs-sprite.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  32.   "Url=/ext-3.1.0/resources/images/default/tree/loading.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  33.   "Url=/ext-3.1.0/resources/images/default/tree/leaf.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  34.   "Url=/ext-3.1.0/resources/images/default/tree/folder-open.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  35.   "Url=/ext-3.1.0/resources/images/default/tabs/tab-close.gif", "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp", ENDITEM,   
  36.   LAST);</p><p> web_url("top.jsp",   
  37.   "URL=http://10.135.27.24/ZZJYT/login/top.jsp",   
  38.   "Resource=0",   
  39.   "RecContentType=text/html",   
  40.   "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp",   
  41.   "Snapshot=t3.inf",   
  42.   "Mode=HTML",   
  43.   LAST);</p><p> web_url("noticeList.jsp",   
  44.   "URL=http://10.135.27.24/ZZJYT/login/alarm/noticeList.jsp",   
  45.   "Resource=0",   
  46.   "RecContentType=text/html",   
  47.   "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp",   
  48.   "Snapshot=t4.inf",   
  49.   "Mode=HTML",   
  50.   EXTRARES,   
  51.   "Url=/ext-3.1.0/resources/images/default/toolbar/bg.gif", ENDITEM,   
  52.   "Url=/ext-3.1.0/resources/images/default/qtip/tip-anchor-sprite.gif", ENDITEM,   
  53.   "Url=/ext-3.1.0/resources/images/default/qtip/tip-sprite.gif", ENDITEM,   
  54.   "Url=/ext-3.1.0/resources/images/default/grid/grid3-hrow.gif", ENDITEM,   
  55.   "Url=/ext-3.1.0/resources/images/default/grid/col-move-top.gif", ENDITEM,   
  56.   "Url=/ext-3.1.0/resources/images/default/grid/grid3-hd-btn.gif", ENDITEM,   
  57.   "Url=/ext-3.1.0/resources/images/default/form/text-bg.gif", ENDITEM,   
  58.   "Url=/ext-3.1.0/resources/images/default/grid/col-move-bottom.gif", ENDITEM,   
  59.   "Url=/ext-3.1.0/resources/images/default/grid/grid-blue-split.gif", ENDITEM,   
  60.   "Url=/ext-3.1.0/resources/images/default/button/btn.gif", ENDITEM,   
  61.   "Url=/ext-3.1.0/resources/images/default/grid/page-first-disabled.gif", ENDITEM,   
  62.   "Url=/ext-3.1.0/resources/images/default/grid/page-prev-disabled.gif", ENDITEM,   
  63.   "Url=/ext-3.1.0/resources/images/default/grid/page-next-disabled.gif", ENDITEM,   
  64.   "Url=/ext-3.1.0/resources/images/default/grid/page-last-disabled.gif", ENDITEM,   
  65.   "Url=/ext-3.1.0/resources/images/default/grid/refresh.gif", ENDITEM,   
  66.   "Url=/ext-3.1.0/resources/images/default/box/tb-blue.gif", ENDITEM,   
  67.   "Url=/ext-3.1.0/resources/images/default/grid/refresh-disabled.gif", ENDITEM,   
  68.   "Url=/ext-3.1.0/resources/images/default/grid/loading.gif", ENDITEM,   
  69.   "Url=/ext-3.1.0/resources/images/default/grid/grid3-special-col-bg.gif", ENDITEM,   
  70.   LAST);</p><p> web_submit_data("TreePanel_Data.jsp",   
  71.   "Action=http://10.135.27.24/ZZJYT/jBean/TreePanel_Data.jsp",   
  72.   "Method=POST",   
  73.   "RecContentType=text/html",   
  74.   "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp",   
  75.   "Snapshot=t5.inf",   
  76.   "Mode=HTML",   
  77.   ITEMDATA,   
  78.   "Name=node", "Value=0", ENDITEM,   
  79.   LAST);</p><p> web_submit_data("noticeList_Data.jsp",   
  80.   "Action=http://10.135.27.24/ZZJYT/jBean/login/alarm/noticeList_Data.jsp",   
  81.   "Method=POST",   
  82.   "RecContentType=text/html",   
  83.   "Referer=http://10.135.27.24/ZZJYT/login/alarm/noticeList.jsp",   
  84.   "Snapshot=t6.inf",   
  85.   "Mode=HTML",   
  86.   ITEMDATA,   
  87.   "Name=start", "Value=0", ENDITEM,   
  88.   "Name=limit", "Value=15", ENDITEM,   
  89.   "Name=msgword", "Value=", ENDITEM,   
  90.   LAST);</p><p> web_submit_data("TreePanel_Data.jsp_2",   
  91.   "Action=http://10.135.27.24/ZZJYT/jBean/TreePanel_Data.jsp",   
  92.   "Method=POST",   
  93.   "RecContentType=text/html",   
  94.   "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp",   
  95.   "Snapshot=t7.inf",   
  96.   "Mode=HTML",   
  97.   ITEMDATA,   
  98.   "Name=node", "Value=B1", ENDITEM,   
  99.   LAST);</p><p> web_submit_data("TreePanel_Data.jsp_3",   
  100.   "Action=http://10.135.27.24/ZZJYT/jBean/TreePanel_Data.jsp",   
  101.   "Method=POST",   
  102.   "RecContentType=text/html",   
  103.   "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp",   
  104.   "Snapshot=t8.inf",   
  105.   "Mode=HTML",   
  106.   ITEMDATA,   
  107.   "Name=node", "Value=B1001", ENDITEM,   
  108.   LAST);</p><p> web_url("hr_xs_sjcj.jsp",   
  109.   "URL=http://10.135.27.24/ZZJYT/xsManager/hr_xs_sjcj.jsp",   
  110.   "Resource=0",   
  111.   "RecContentType=text/html",   
  112.   "Referer=http://10.135.27.24/ZZJYT/login/frame.jsp",   
  113.   "Snapshot=t9.inf",   
  114.   "Mode=HTML",   
  115.   EXTRARES,   
  116.   "Url=/ext-3.1.0/resources/images/default/form/trigger.gif", ENDITEM,   
  117.   "Url=/ext-3.1.0/resources/images/default/grid/page-next.gif", ENDITEM,   
  118.   "Url=/ext-3.1.0/resources/images/default/form/date-trigger.gif", ENDITEM,   
  119.   "Url=/ext-3.1.0/resources/images/default/grid/grid3-hrow-over.gif", ENDITEM,   
  120.   LAST);</p><p> return 0;  
  121.   
  122. </p>  


其中红色部分则是需要参数化的部分

 

 

选取需要参数的部分,选择Replace With a Parameter

修改参数名以及参数类型后在加入参数值

 

 

 

加入参数

 


点击ok以后,参数化过程完成这样就可以运行脚本开始进行测试了。参数化过程比较简单困难的部分是选择参数运行的方式,包括Select next row, update alue on 这一部分都需要参考一些文章才行。

以上是关于使用LoadRunner发送json格式登陆参数后怎样获取登陆验证的token的主要内容,如果未能解决你的问题,请参考以下文章

loadrunner设置参数

RSpec在请求后发送原始JSON参数

loadrunner11 设置发送报文编码格式

生成的json对象,用express发送post请求到服务端,JSON.stringify后保存到服务器后数据格式变得很奇怪?

详细分析LoadRunner参数化

LoadRunner Vuser接口测试脚本 Post举例