
PS: 这里要说下Cookie,在后面的参数化过程中发现登录接口请求头里要携带cookie;我一直的误解就是只有登录才有cookie产生,其实是不对的, 一般的cookie是会话被创建时就产生,关闭后就消失 ;可以随便访问项目的网页获取到cookie,然后想办法将cookie加到请求头里去~
1、CSV控制-CSV DATA Set Config
线程组 -> 新建请求 ->参数用变量代替 ,格式${变量名}
新建EXCEL文件,写入测试数据-> 另存为csv文件的格式;
线程组 ->添加配置元件->CSV DATA Set Config->在配置元件里输入csv的绝对地址 ->若CSV不含表头,则在CSV数据文件设置里输入表头变量;反之,则不添加;
2、用户自定义变量
比如有登录接口和获取token的接口,都需要输入用户名和密码,如果我在每个接口请求参数都输入一次,相当于输入了两次;那么,可以使用自定义变量,将用户名和密码的值存在一个变量里,后续的接口需要时直接调用参数即可,减少重复输入的次数。具体 *** 作如下:
线程组-> 添加配置元件->选择用户自定义变量->添加变量名及对应的值(key&value);
线程组 -> 新建请求 ->参数用变量代替,格式为${变量名},调用变量值;
PS: 用户定义变量的所有数据只会初始化一次,不管你多少线程,循环多少次,它的值是不变的(即同一个变量的值写死,不能改变)。 用户自定义变量作用域不同,表示的含义也有区别;放在线程组外,表示全部变量;放在线程组内表示局部变量。
3、用户参数
在调试脚本的时候,可以使用前置处理器中的用户参数组件进行数据的提供,在该数据中可以使用固定值也可以使用变量值。
线程组-> 添加前置处理器->选择用户参数->添加变量名,并输入多个对应的值
每次迭代更新一次:如果选中该选项,则参数的值在每个迭代中保持不变,在新的迭代开始时取下一个值。
PS:在使用用户参数时,如果有n个值,需要设置线程数=n,若设置循环为n,只会调用第一个值执行n遍。
4、函数助手
函数助手里内置了多个函数,如__Random或${__CSVRead(,)}等可以按需求使用不同的功能函数;
面板-> 选项-> 函数助手对话框-> 根据需要选择不同的函数-> 设置范围及变量名->后续接口调用。
${__CSVRead(,)}可以实现读取CSV数据,()里逗号左边是CSV路径,右边是CSV里存放的变量的索引;索引从0开始依次增加1,如 ${__CSVRead(D:\jmeter\loginstxt,0)}。 注:这里的CSV文件就不要表头了。
用户自定义变量的值写死,不能改变;而用户参数,可以引入函数助手,使得同一变量有不同的变量值。
测试需求跟上一篇实践一样,区别是之前用python-requests去实现,现在用Jmeter实现。
使用Jmeter测试授权流程,>
1、首先打开jmeterproperties文件,ctrl+F查找CookieManagersavecookies,默认值为false,把它改为true并保存。
2、其次在线程组前面添加一个cookiemanager,值默认就好。
3、最后再运行一下set-cookie测试计划,在查看结果树中查看setcookie的响应信息。
对接口进行压力时,很多时需要用户登陆之后才能 *** 作,比如抽奖
步骤:
1新增登陆的>
用来存储浏览器产生的用户信息(例如登录成功后的cookie信息)
点击后,>
以上就是关于浅学Jmeter性能测试:参数化全部的内容,包括:浅学Jmeter性能测试:参数化、【接口/性能】Jmeter-01、取样器结果里面的set-cookie怎么更改等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)