1. 后台测试
  2. 测试场景
  3. 构造全链路场景

构造全链路场景

如果被测场景包含多个接口的串并联及接口间上下文传参,可选择全链路测试场景。通过参数化配置即可构造复杂的测试场景,同时便于后续用例维护。

创建入口

方式一:

在测试场景列表中,点击新建测试场景按钮,选择“全链路”tab,选择指定的接口协议,点击“创建”按钮。

方式二:

单接口模式转成全链路模式
在单接口测试场景的编辑页面,点击“全链路模式”,即可实现一键转化。

通过点击“+”添加请求和控制器,同时支持导入接口

链路与接口执行顺序

多接口串行及传参

同一链路下的多个接口,接口的执行顺序为串行。
*注意:如需接口间传参,可设置“出参定义”(具体用法详见〈变量的定义与引用〉章节)

多链路并行


点击“+”可添加多条链路,链路内的接口串行执行,链路执行顺序选择“并行”。

多链路串行及传参

链路执行顺序选择“串行”即可实现多条链路串行执行,链路内的接口同为串行执行。
如果链路间需要参数传递,请点击链路变量

导出变量里输入需要传递给下一个链路的变量名,支持设置多个变量

逻辑控制器

当业务逻辑较复杂可通过添加相应逻辑控制器编排测试场景,从而模拟真实业务场景。

控制器名称 说明
条件控制器 根据给定条件决定是否执行该节点下的子节点
循环控制器 指定其子节点运行的次数,可以使用具体的数值(如下图,设置为5次),也可以设置循环条件
等待控制器 延时不会计入单个接口的响应时间,但会计入事务控制器的时间
流量控制器 控制其下的子节点的执行次数与负载比例分配
并行控制器 链路内可设置多个并行控制器,各自子节点并行执行
事务控制器 事务控制器用来统计该控制器子节点的所有时间
仅一次控制器 该控制器下的子结点对每个线程只执行一次,登录场景经常会使用到这个控制器
分组控制器 不产生实际行为,仅用于结构化编排
集合点 等待所有线程全部执行完之前任务再继续执行

前置/后置处理

在编排测试场景中,为了更加模拟真实场景,需要通过调用接口准备测试数据,或者进行环境准备,可选择前置处理。在对接口压测结束后,涉及到环境的清理,可通过配置后置处理实现。

前置处理


在测试任务执行中,如果用户配置前置处理(非必填项),会优先执行“前置处理”,再处理“执行链路”。
如果压测场景中需要通过调用接口准备测试数据,并在执行链路中引用测试数据,需要进行以下操作:

  • 1)在前置处理的链路中添加请求,并定义变量
  • 2)在前置处理中选择需要导出的数据变量
  • 3)在执行链路所需接口引用变量

在左侧菜单选择“前置处理”,点击“添加链路

点击“+”,根据接口协议选择对应类型的请求

以HTTP请求为例,配置请求相关信息,通过出参定义配置需要在执行链路里使用的测试数据变量

在请求配置完成后,点击“+”添加数据导出

填写数据导出相关配置信息

数据导出配置参数具体说明如下:

参数名称 说明 默认值
描述 可按照实际业务添加对应描述 数据导出
导出数据 选择需要被执行链路共用的变量。若下拉选项为空,请在该链路对应请求定义变量(出参定义)
数据量 设置需要导出数据的条数 3000
轮询配置 读取导出数据的次数,循环读取或仅读取一次 循环执行
共享模式 链路内共享:每个线程每次发送请求前会重新读取文件数据,每个线程仅分配一次:每个线程仅在第一次发送请求时读取数据文件,之后始终使用相同的数据 链路内共享

注意:前置链路支持创建多条链路并行,仅支持一条链路配置“数据导出”指令。

后置处理


测试任务执行中,如果用户配置后置处理(非必填项),会在“执行链路”之后运行“后置处理”,进行环境清理任务。