接口测试 --apipost 如何自定义变量
如何在接口测试工具 apipost 自定义变量?
这个就需要使用 apipost 自带的脚本功能,有预执行脚本和后执行脚本
什么是 APIPOST 脚本
APIPOST 脚本是基于 JavaScript 语言的代码片段,可实现在接口请求或集合测试时添加动态行为。
脚本可实现的功能
测试(断言)请求返回结果的正确性(后置脚本)。
动态修改接口请求参数,如增加接口签名参数等(前置脚本)。
接口请求之间传递数据(使用脚本操作变量)。
脚本中可以直接请求一个接口地址。
APIPOST 的脚本分为预执行脚本和后执行脚本。
预执行脚本
预执行脚本是一个请求发送前执行的脚本。
后执行脚本
后执行脚本是一个请求发送后执行的脚本。
实际发送演示
如下图所示(控制台打印),预执行在请求发送前执行,请求结束后,后执行脚本执行:
预执行脚本
预执行脚本的作用时间
预执行脚本是一个请求发送前执行的脚本。
预执行脚本的作用
预执行脚本可以完成以下作用:
编写 JS 函数等实现复杂计算;
变量的打印
定义、获取、删除、清空环境变量
定义、获取、删除、清空全局变量
获取请求参数
动态添加、删除一个 header 请求参数
动态添加、删除一个 query 请求参数
动态添加、删除一个 body 请求参数
发送 HTTP 请求
编写 JS 函数等实现复杂计算
我们可以在预执行脚本中定义一个函数_random,
它返回一个字符串:“你好中国”+随机数,此时可以通过
将它赋值给全局变量 random_var。
预执行脚本打印调试变量
我们可以通过 console.log()将需要的变量打印在控制台,从而查看某个变量的当前值。如图上面示例中的
定义、获取、删除、清空环境变量
定义、获取、删除、清空全局变量
获取请求参数
通过 request 对象获取请求参数,详细可以参考《APIPOST 内置变量》一节文档。
动态添加、删除一个 header 请求参数
动态添加、删除一个 query 请求参数
动态添加、删除一个 body 请求参数
发送 HTTP 请求
我们可以在预执行脚本中利用 AJAX 的 $.ajax 方法发送一个 http 请求。以下是一个简单的示例 demo:利用预执行脚本发送一个请求到https://echo.apipost.cn/get.php,并将响应结果的bigint赋值给了全局变量bigint。
后执行脚本
后执行脚本的作用时间
后执行脚本是一个请求发送后执行的脚本。
后执行脚本的作用
后执行脚本可以完成以下作用:
编写 JS 函数等实现复杂计算;
变量的打印
定义、获取、删除、清空环境变量
定义、获取、删除、清空全局变量
获取请求参数
获取响应参数
发送 HTTP 请求
测试(断言)请求返回结果的正确性
后执行脚本打印调试变量
其用法同预执行脚本雷同,不再赘述。
定义、获取、删除、清空环境变量
其用法同预执行脚本雷同,不再赘述。
定义、获取、删除、清空全局变量
其用法同预执行脚本雷同,不再赘述。
获取请求参数
通过 request 对象获取请求参数,详细可以参考《APIPOST 内置变量》一节文档。
获取响应参数
通过 response 对象获取请求参数,详细可以参考《APIPOST 内置变量》一节文档。
发送 HTTP 请求
其用法同预执行脚本雷同,不再赘述。
测试(断言)请求返回结果的正确性
利用后执行脚本进行测试(断言)请求返回结果的正确性,详细可以参考《响应以及断言》一节文档。
评论