jmeter--交替控制器,foreach控制器,仅一次控制器一篇搞定(以商城订单为例子)

背景

项目组要写订单下单的接口自动化脚本,如果这个用python写,那就非常简单了,但项目组业务测试人员都是用jmeter去写,所以只能用jmeter去写。

实现需求

要求
1.遍历所有订单类型的接口(待付款,待签收,待评价等)
2.所有订单的模拟操作(下单,取消下单,删除订单,确认收货)

覆盖jmeter技术

仅一次控制器:只执行一次,不管你循环多少次,常用场景是登录。
foreach控制器:循环遍历你的参数,有点类似数组的东西。
简单控制器:其实就是分组,分类
交替控制器:类似于多个数组取值,比如你数组有两个值,你循环一次,就只是取第一个,所以你循环两次才能取到所有的值。

注意:仅一次控制器、交替控制器对多线程不生效,它只是针对单线程的,可以设置为单线程循环多次

实现逻辑

1.遍历所有订单类型的接口(待付款,待签收,待评价等)

这是一个接口,只是使用到了不同的body传参参数。如果是新手,大部分会这么写。
在这里插入图片描述
使用foreach控制器就可以将几个请求合并成一个。
使用方式:
添加用户定义变量:
在这里插入图片描述
然后添加foreach控制器
在这里插入图片描述
在这里插入图片描述
将上面的订单列表合并到这里去,名字使用变量值。这样下来就可以达到,一个接口循环使用变量参数传参的功能。

2.所有订单的模拟操作(下单,取消下单,删除订单,确认收货)

由于订单模拟不同类型订单的操作,所以我们要使用到交替控制器。
另外由于有些操作是只需要一次操作的,比如查询收件人地址,查询商品,所以我们还得使用到仅一次控制器
分类下:
仅一次操作:查询收件人地址,查询商品,查询订单类型
多次操作:加入购物车,下单
交替操作:比如1. 下单,未付款。 2,下单立即付款
整理下来的流程是这样:
1 查询各种订单类型
2 查询商品
3 查询收件人地址
4 加入购物车
5 下单
6 不付款
7 取消订单,
8 删除订单
9 加入购物车
10 下单
11 付款
12 发货(数据库操作)
13 确认收货

实现后:
有两个交替控制器,所以循环两次:

仅一次控制器:
  foreach控制器:
    1 查询各种订单类型
  2 查询商品
  3 查询收件人地址
4 加入购物车
5 下单
交替控制器:
  简单控制器1:
    6 不付款
    7 取消订单,
    8 删除订单
  简单控制器2:
    11 付款
    12 发货(数据库操作)
    13 确认收货

在这里插入图片描述在这里插入图片描述
效果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值