如何在apikit中,创建 API 监控呢?
创建并开启监控API
一、手动创建监控API
Eolink API 网络监控平台支持从 Eolink API Management(API管理产品)中导入API信息,或者手动创建监控API。
进入API监控页面,点击 添加API 按钮,会直接进入API监控编辑页面。你可以在编辑页中设置API监控的名称、请求地址、请求信息、校验规则等信息。
进入API监控编辑页后,你可以设置API的基本信息、请求信息、校验规则等内容。
API监控基础信息
API监控的基础信息包括:
-
API请求地址
-
API分组、名称
-
API监控的项目环境
-
API监控节点:系统会在选中的监控节点区域发起API监控请求
-
监控频率:系统会在选中的监控节点中按照设置的频率对API发起监控请求
-
超时限制:当API的响应时间超出设定的限制时间时,系统将会自动中断该次监控请求,并且报请求超时异常。
请求头部
你可以输入或导入请求头部。批量导入的数据格式为 key : value ,一行一条 header 信息,如:
Connection: keep-alive
Content-Encoding: gzip
Content-Type: application/json
Date: Mon, 30 Dec 2019 20:49:45 GMT
请求体
请求体支持以下类型:Form-data(表单)、JSON、XML、Raw(自定义文本类型数据)。
Query参数
Query参数指的是地址栏中跟在问号?后面的参数,如以下地址中的user_name参数:
shop/query?shop_id=001
批量导入的数据格式为 ?key=value ,通过&分隔多个参数,如:
api.eolinker.com/user/login?user_name=jackliu&user_password=hello
REST 参数
REST参数指的是地址栏被斜杠/分隔的参数,如以下地址中的user_name、user_password参数。
/user/login/{user_name}/{user_password}
注意,只需要在URL中使用 {} 将REST参数括起来,下方的请求参数名中不需要使用 {} 。
权限校验
如果访问API时需要先进行身份验证,可以在权限校验处填写校验的信息。
二、从接口文档导入API
如果你已经使用了 Eolink API Management(API研发管理) 产品,你可以在创建监控接口的时候直接导入API Management 的API文档信息。
进入API监控页面,点击 添加API 按钮旁的下拉菜单按钮,在菜单中选择 从API管理导入:
在弹窗中选择要导入的API并点击确定之后,会进入API监控信息编辑页面,在这里可以编辑每个导入的API的信息,一般来说你只需要补充API的请求参数值以及校验规则即可。
进入API监控编辑页后,你可以设置API的基本信息、请求信息、校验规则等内容。
三、开启监控
创建好API之后,在操作栏点击 更多 的按钮,在下拉菜单中选择 开启监控。
也可以在顶部点击 批量操作 按钮来对API做批量开启监控:
前置脚本和后置脚本
API脚本分为 API前置脚本 和 API后置脚本 两种,分别对应API 请求前 和 返回数据后的两个阶段。你可以通过编写Javascript代码,在API前置脚本中改变请求参数,或者是在API后置脚本中改变返回结果。
API脚本功能常用于以下几种情况:
-
API请求时对Body进行整体签名加密,常用于银行等系统测试中
-
API返回结果后对Body进行解密,常用于反爬虫系统的测试中
-
发起的API请求会依次经过以下流程。其中如果你没有编写相应的API脚本,则会略过API脚本阶段。
返回结果校验
校验返回头部
返回头部支持以下校验选项:
校验方式 | 描述 |
存在性校验 | 判断是否存在该字段,如不存在则提示测试失败 |
值校验 | 判断返回内容与预设值是否相等,如不相等则提示测试失败 |
校验返回结果
API测试用例支持5种校验方式:
校验方式 | 描述 |
不校验 | 无论返回结果是什么,均认为测试通过 |
校验状态码 | 判断响应头部中的HTTP Status Code |
校验JSON | 判断响应结果的JSON结构和参数值,可以判断对象、数组、字段等信息 |
校验XML | 判断响应结果的XML结构和参数值,可以判断对象、数组、字段等信息 |
完全匹配 | 判断响应结果是否等于预期结果 |
正则匹配 | 通过正则表达式去匹配响应结果,如果匹配的结果集不为空,则认为测试通过 |
存在性校验
当我们需要判断返回的头部/返回结果中的某个字段是否存在时,可以设置存在性校验来进行判断。
存在性校验 | 说明 |
是(默认) | 判断是否存在该字段,如不存在则提示测试失败 |
否 | 不判断是否存在该字段 |
类型校验
设置对参数的类型进行校验,返回结果的参数类型必须要等于预设的参数类型,否则提示测试失败。
内容校验
设置对字段值的判断条件,不同类型的字段可能会有不同的判断条件。
校验规则 | 符号 | 说明 |
不校验 | [] | 不校验返回内容,任何值均判断为正确 |
值-等于 | [value = ] | 返回结果的 值 必须要 等于 预期结果,否则提示测试失败 |
值-不等于 | [value != ] | 返回结果的 值 必须要 不等于 预期结果,否则提示测试失败 |
值-大于 | [value > ] | 返回结果的 值 必须要 大于 预期结果,否则提示测试失败 |
值-小于 | [value < ] | 返回结果的 值 必须要 小于 预期结果,否则提示测试失败 |
值-包含 | [include = ] | 返回结果的 值 必须要 包含 预期结果,否则提示测试失败。比如预期结果为“hello”,实际返回结果为“hello world”,则测试结果正确。 |
值-不等于 | [value != ] | 返回结果的 值 必须要 不等于 预期结果,否则提示测试失败 |
正则 | [Reg = ] | 返回结果的 值 必须要 不等于 预期结果,否则提示测试失败 |
长度-等于 | [length = ] | 返回结果的 长度 必须要 等于 预期结果,否则提示测试失败 |
长度-不等于 | [length != ] | 返回结果的 长度 必须要 不等于 预期结果,否则提示测试失败 |
长度-大于 | [length > ] | 返回结果的 长度 必须要 大于 预期结果,否则提示测试失败 |
长度-小于 | [length < ] | 返回结果的 长度 必须要 小于 预期结果,否则提示测试失败 |
循环校验
对于数组类型(Array[])的返回参数,系统提供了 校验数组内元素 的选项,开启该选项之后,系统会对数组内的所有元素进行校验,否则仅校验数组内的第一个元素。
例如:
有如下JSON数组,当demo_array字段(红色部分)是一个数组类型时,开启校验数组内元素后会对demo_array下一级的字段(蓝色部分)进行整体的循环校验。
以下两张图的红色以及蓝色部分一一对应。
高级设置
重定向
可以设置是否跟随请求的重定向(HTTP 状态码为301、302)
验证SSL证书
可以设置是否校验SSL证书
发送Eolink Token头部
可以设置是否发送Eolink Token头部,Eolink Token用于标识请求发送自Eolink平台
发送no-chche头部
可以设置是否发送no-cache头部,用于更新缓存数据