【 Apifox】Apifox的前置操作与后置操作

Apifox官网地址:http://apifox.cn/a103abcc

文章目录

  • 一、断言
  • 二、提取变量
  • 三、数据库操作
  • 结语

一、断言

后置操作支持添加断言,可对接口返回的数据(或响应时间)设置断言,判断是否符合预期。

设置断言:

【 Apifox】Apifox的前置操作与后置操作_第1张图片
运行后,查看断言结果:

【 Apifox】Apifox的前置操作与后置操作_第2张图片

二、提取变量

后置操作支持添加提取变量,可从接口返回结果里提取数据,设置到变量(临时变量/环境变量/全局变量),方便其他接口运行的时候直接使用。如下:
【 Apifox】Apifox的前置操作与后置操作_第3张图片

接口之间如何传递数据

B 接口请求参数依赖于 A 接口返回的数据,希望 B 接口发送请求的时候能获取 A 接口返回的数据作为请求参数。实现思路如下:

  1. A 接口使用后置操作->提取变量功能将请求完成后返回的对应数据提取到变量。
  2. B 接口对应的参数值直接引用前面设置的变量。

示例一:A 接口添加后置操作提取变量

打开 A 接口用例的后置操作Tab,添加后置操作->提取变量,如下所示:将接口返回 Response JSON 数据里的 token 值提取到名为 token 的临时变量(或环境变量、全局变量)。

三、数据库操作

前置操作、后置操作支持添加数据库操作,可读写数据库数据,查询结果可在接口请求参数、断言、自定义脚本等场景中使用。

目前支持MySQLSQL ServerOraclePostgreSQL,未来会支持更多数据库类型。

示例:

  1. 在前置操作里添加数据库操作;
  2. SQL 为 SELECT * FROM user LIMIT 2
  3. 将查询结果提取到 3 个变量:allUseruseruserName

说明:

假设 SQL 查询结果数据为:

[
  {
    "id": 1,
    "name": "jack"
  },
  {
    "id": 2,
    "name": "peter"
  }
]

则提取到的变量值分别为如下:

  1. 临时变量allUser的值是数组类型,值为:
[
  {
    "id": 1,
    "name": "jack"
  },
  {
    "id": 2,
    "name": "peter"
  }
]
  1. 临时变量user的值是对象类型,值为:
{
  "id": 1,
  "name": "jack"
}
  1. 临时变量userName的值是字符串类型,值为:
jack

变量使用提示

使用变量时,读取对象或数组类型变量里的属性值写法为{{allUser[0].name}}{{user.name}},遵循JSON Path语法规范,只需将JSON Path里的$符号替换为变量名既可。

结语

为了方便大家,我将Apifox的链接放下面,大家直接点击就可以进入;

Apifox网址:http://apifox.cn/a103abcc

你可能感兴趣的:(#,【Apifox从入门到实践】,apifox,java,数据库)