记录一次loadrunner脚本调试(浑南通手机APP端新增数据)
首次进行手机APP端的测试,一开始先学习了如何抓取APP上面的包
点击事件上报,点击加号,开始添加事件,输入完成后,点击提交就行。
然后开始抓包,老问题是,每次重新抓包,都需要退出账号再进行登录,和PC端的必须输入网址不能刷新进入是一个道理。否则你就会少掉一条请求。
Token添加:
脚本还未调试,就报出了这样的错。
这是APP端特有的问题,需要添加Accesstoken头信息来跳过登录这一步骤,所以我们需要写一个专门获取token的接口
先进行关联
然后根据提示输入token头信息代码 ,在每一条提交数据的请求前面都要添加
web_add_header("Authorization","Bearer {access_token}");
注意,我们可以看到响应里面除了Access_token,还有jsessionid、refresh_token,一般来说,这些值都是不需要关联的,APP中稍微特殊一点,一般只关联Access_token
图片添加操作:
这个时候回来看看我们提交的信息,里面是有图片的,所以我们需要添加图片。不添加图片会报错
首先挑选一张图片,进入脚本文件夹,将图片放进文件夹内(自行改名)
然后在loadrunner里面找到对应的请求(找哪里有图片格式的代码即可,看报错信息也行),将里面的图片名称改为自己设置的图片的名称。(注意刚才的提交信息里有两张图片,所以有两条信息都需要改图片)
Rowguid参数化设置:
本来到这里已经设置成功,跑也可以跑通,但是出现了一个问题,跑了几次之后,没有新增记录,反倒是第一次的记录里面不断新增图片
虽然提交成功,但是记录没有新增,反而是不断地更新一条记录,一定是提交的过程中出现了问题
排查了好久,找到了问题的所在。原来存在着一个rowguid(全局标识符)值,是由前端所发送的,一个无返回值的参数,之所以一直找不到,就是因为它没有返回值,不在响应里面。所以也无法关联。而且在抓包看的时候,得到的rowguid是一样的,很难发现问题在哪里。
我们需要修改这个值,让它每次出现都是随机生成的,所以需要手动参数化。
(这种格式的字符串一定要留意,一般都需要关联)
如何进行参数化修改?让它随机生成?
首先找到这些值的所在,观察结构,在横杠结构处的四位数字可以修改,我们添加参数化
在参数化列表里面,选择Random Number,因为我们需要修改四位数,所以选择第四个,就是0001~9999(注意要补0)
然后是关键,因为需要随机,所以要设置每次出现都要更新
设置完成
运行后成功新增数据