3.jmeter接口关联及实战

1.当所传参数包含键值对和json文件时,键值对放在链接后,参数放在消息体数据中

2.当查看结果树返回乱码时,修改请求中内容编码为utf-8

3.jmeter接口关联及实战_第1张图片

一、jmeter接口关联

1.正则表达式提取器

3.jmeter接口关联及实战_第2张图片

接口2.3传递的参数中需要用到接口1的返回值

禁用接口2.3,发送接口1请求,可以在查看结果树中验证正则取值,后填写正则表达式提取器中信息,正则表达式中(.*?)表示匹配两边内容一致,所有中间内容的字符串

正则表达式:复制所取内容及左右值,后修改所取值内容为(.*?)。

3.jmeter接口关联及实战_第3张图片

在接口1下添加子组件正则表达式提取器(后置处理器中),并填写内容

3.jmeter接口关联及实战_第4张图片

(若想匹配多个结果,则需要在模板处填写需要截取的多个位置,如:$1$,$2$表示提取正则表达式的取到的第一个和第二个值,取值内容用,隔开

正则表达式内容,如:"access_token":"(.*?)","expires_in":(.*?),引用名称不需修改)

可用调试取样器查看正则提取器提取的值

3.jmeter接口关联及实战_第5张图片

3.jmeter接口关联及实战_第6张图片

切换接口2.3状态为启用,随后在需要调用返回值的接口通过${引用名称}$调用

3.jmeter接口关联及实战_第7张图片

2.jsonpath提取器

json表达式取值

  • 代表跟目录 $
  • 取子节点
    • . (点)
    • $["access_token"]
  • 取得复杂节点的值(结合下标和子节点用法)
    • $.tags[17].name

操作步骤

3.jmeter接口关联及实战_第8张图片

接口2.3传递的参数中需要用到接口1的返回值

禁用接口2.3,发送接口1请求,可以在查看结果树中验证jsonpath取值($表示根目录,.节点名提取父目录下子节点)

3.jmeter接口关联及实战_第9张图片

在接口1下添加子组件json提取器(后置处理器中),并填写内容

3.jmeter接口关联及实战_第10张图片

可用调试取样器查看正则提取器提取的值

3.jmeter接口关联及实战_第11张图片

切换接口2.3状态为启用,随后在需要调用返回值的接口通过${引用名称}$调用

3.jmeter接口关联及实战_第12张图片

二、接口测试实战(业务闭环)

业务闭环:避免调用接口时因增删改查增加的垃圾数据,新增数据并测试后需要对数据进行删除,新增》查询》编辑》查询》删除》查询

3.jmeter接口关联及实战_第13张图片

1.增加

因标签名不能重复,所以需要加上一个随机数

工具》函数助手对话框

随机数字

3.jmeter接口关联及实战_第14张图片

1.选择函数类型为random

2. 输入函数的最大值和最小值

3.点击生成,自动复制函数

随机字符串和数字

3.jmeter接口关联及实战_第15张图片

2.批量删除标签

在查看结果树下查询接口通过正则表达式查看一共34个id

3.jmeter接口关联及实战_第16张图片

在查询接口中增加一个正则提取器(-1表示取所有值)

3.jmeter接口关联及实战_第17张图片

增加foreach控制器(循环控制器),将批量删除接口放在控制器下(保留20个id)(正则的取值格式:id_1,id_2,id_3)

3.jmeter接口关联及实战_第18张图片

为防止批量删除时无时间间隔时库锁死,增加一个固定定时器

3.jmeter接口关联及实战_第19张图片

修改批量删除接口中变量的值

3.jmeter接口关联及实战_第20张图片

3.文件上传

文件上传接口信息填写,mime类型输入:multipart / form-data

3.jmeter接口关联及实战_第21张图片

若不填写mime类型,则勾选对post使用multipart / form-data,并且在高级中,客户端实现选择java

3.jmeter接口关联及实战_第22张图片

3.jmeter接口关联及实战_第23张图片

在查看结果树中复制返回的url,去掉转义符\在游览器打开,若能成功显示,则说明上传成功

3.jmeter接口关联及实战_第24张图片

你可能感兴趣的:(jmeter,jmeter)