Jmeter的如何做接口测试的基础篇_xiao-qian的博客-CSDN博客看了这个基础篇,此篇文章告知博友们如何做参数化和接口之间的关联怎么做

1.Jmter的参数化有四种实现办法如下:

1)用户参数:在注册脚本之前设置,选择用户参数

进入用户参数,点击添加变量,这里可以添加多个,比如case_name,user,email,iphone_number等,要增加多少个值就写几个用户,如下是三组值。可以对变量名和用户进行修改删除。然后再把注册的参数给到注册脚本里面,一定是${变量名}格式就可以生效

执行一下线程组数量设置为3,循环为1,时间为1s,脚本结果如下和我们预期的一模一样:

2)参数化,引入随机函数,然后把随机函数做一点加工放入注册的脚本里面,以下是系统随机数为29,94,95。

3)用cvs文件做参数化:

在桌面新增一个002.txt文本文件,写入name,user,email,然后把文本格式改成.csv,就自动变成了excell格式,如下:

先新增一csv文件如下,

然后在里面配置文件路径,是否忽略首行

如果你操作了以后发现跑起来会像我下面这样乱码的感觉,恭喜说明踩坑了,然后来吧处理一下

跟着博主把002.csv文件的编码格式改成utf-8,保存后再跑脚本就ok了。

以上过程中,注意.txt文件里面的逗号要用英文逗号且编码格式要为UTF-8。且不要傻傻的第一步就是exll文件然后再转化成csv这样不可行

4)用JDBC Requestrian+bean shell后置处理器处理,现在要用数据库数据来作为登录接口的入参:在登录之前要新增三个配置:JDBC连接,jdbc request 和beansehll如下:

JDBC连接:(不清楚可以看基础篇)

再看JDBC request:

最后看bean  shell配置:

vars.put("username",vars.getObject("result").get(0).get("user_name"));

vars.put("myemail",vars.getObject("result").get(0).get("email"));

再把获取到的 username,作为变量传入登录接口:

以上就是四种参数化的方式。

2.如何做参数关联?

若线程组内的话就用正则提取器或者边界提取器取出关键字作为下次接口的入参,若线程组和线程组之间用bean shell把局部变量转化成全局变量

其实业务都是相同的,博主也不便把业务抛出来,就给大家讲下正则提取器用法:

边界提取器:

其实两者差不多取其一就可以。这里就是要注意提取器要在被提取对象之后,在要关联的请求之前。

线程组之间的如何把局部变量设置全局变量?

现在有两个线程组都是·外卖主线程

第一步搞清楚要取的值是哪个,这里是token,如何取?用json提取器,然后取出来以后怎么验证,用调试取样器(调试取样器一定是在json提取器后面用来验证的)如下三个图:

然后取到值以后删除掉调试取样器,用bean shell后置处理器做处理,不用自己死记硬背,找到函数小助手生成全局变量函数:${__setProperty(mytoken,${token},)},粘贴在bean shell后置处理器中

然后再第二个线程里面用${_P(全局变量)}去引用即可。

Jmter的接口测试提升篇相关推荐

  1. MySQL数据库提升篇-----触发器

    day06 MySQL数据库提升篇-----触发器 一.触发器概述: 触发器是什么?能有什么作用?能给我们带来什么样的操作数据库的方法这都在这里学一一的告诉大家.触发器原理类似于扳机的原理,当你一点击 ...

  2. 经典SQL语句大全(提升篇)

    提升篇 1.说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1<>1(仅用于SQlServer) ...

  3. 你所需要的java基础篇和提升篇大总结

    好好学java 致力于java知识分享 关注 精彩内容 你所需要的java全套视频教程 你所需要的java电子图书 你所需要的大数据视频教程 你所需要的java练习项目 如 / 诗 近半个月,每天一篇 ...

  4. Java提升篇-事务隔离级别和传播机制

    转载自 Java提升篇-事务隔离级别和传播机制 问题的提出 为了保证并发操作数据的正确性及一致性,SQL规范于1992年提出了数据库事务隔离级别. 事务隔离级别分类 事务隔离级别由低往高可分为以下几类 ...

  5. (50)FPGA面试技能提升篇(版本控制工具Clearcase、Git)

    1.1 FPGA面试技能提升篇50(版本控制工具Clearcase.Git) 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试技能提升篇50(版本控制工具Cl ...

  6. (49)FPGA面试技能提升篇(仿真加速平台Palladium、Zebu、Veloce)

    1.1 FPGA面试技能提升篇49(仿真加速平台Palladium.Zebu.Veloce) 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试技能提升篇49( ...

  7. (48)FPGA面试技能提升篇(数字采样、射频存储、频谱搬移)

    1.1 FPGA面试技能提升篇48(数字采样.射频存储.频谱搬移) 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试技能提升篇48(数字采样.射频存储.频谱搬 ...

  8. (47)FPGA面试技能提升篇(Aurora协议/接口)

    1.1 FPGA面试技能提升篇47(Aurora协议/接口) 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试技能提升篇47(Aurora协议): 5)结束语 ...

  9. (45)FPGA面试技能提升篇(Hyperlink接口)

    1.1 FPGA面试技能提升篇45(Hyperlink接口) 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试技能提升篇45(Hyperlink接口): 5) ...

最新文章

  1. ECSHOP头部调用会员的消费积分
  2. .Net 操作MSMQ
  3. vue2使用$set()使对象新增属性后触发视图更新
  4. 中国.NET开发者峰会特别活动-基于k8s的微服务和CI/CD动手实践报名
  5. Android之Android Studio--Gradle多渠道打包
  6. CV和NLP中的无监督预训练(生成式BERT/iGPT和判别式SimCLR/SimCSE)
  7. floatmap 二维数组_Golang学习笔记(四):array、slice、map
  8. 图片上传至服务器实现压缩
  9. php日程 增删改查,使用Fullcalendar管理日程事件(增删改查拖放)
  10. 访问HDFS报错:org.apache.hadoop.security.AccessControlException: Permission denied
  11. 编辑器扩展之Inspector面板可视化调整
  12. 卡斯卡迪亚社区建设者奖:2017年获胜者公布
  13. Python如何判断某天是星期几
  14. 腾讯云服务器无限更换ip,腾讯云服务器免费更换IP额度不足利用弹性IP地址更换...
  15. usrp n310测试总结---测试结果篇(不仅仅是测试结果,还有方法哦)
  16. 【论文分享】ARBITRAR: User-Guided API Misuse Detection
  17. 【马克拉伯】毛刺检测算法
  18. Bootstrap Slider轮播图片样式控制
  19. 本田及通用公司利用区块链技术探索智能电网与电动汽车的互操作性
  20. 电影渲染 cinematic 3d rendering

热门文章

  1. 《数据清洗》8.3.8 加载电影数据至电影维度表
  2. java POI 求和函数_POI导出excel执行自动求和
  3. GeekBand c++學習筆記之四(conversion fuction vs non-explicit-one-arguement ctor)
  4. python中集合运算_Python—集合的操作、文件的操作
  5. java.lang.UnsatisfiedLinkError: dll: Can't find dependent libraries
  6. 输入被除数和除数,求商。
  7. android论文答辩ppt,导师看了100多个答辩ppt以后,给我们总结了一份论文答辩ppt指南!...
  8. iOS Auto Layout界面自动布局(2)
  9. git的使用推送代码到华为云、码云gitee、github
  10. java设备imei号_揭开,陌陌站街引流,设备异常,硬改,那些骗局