本文共 1564 字,大约阅读时间需要 5 分钟。
常用公共函数
在Postman测试脚本中,我们经常会使用一些通用的函数来处理请求和响应数据。本文将详细介绍这些常用的函数及其使用方法。
在编写Postman测试脚本时,超时检测是一个非常重要的功能。我们可以通过以下方法来实现:
var hasResponse = postman.getResponseHeader('Content-Type') ? true : false;if (!hasResponse) { tests['服务端在超时前没返回任何数据,请检查相关服务、网络或反向代理设置(以下跳过其他断言)'] = false;} 通过上述代码,我们可以检测是否接收到了服务器的响应。如果没有接收到响应,表示服务器在超时前没有返回任何数据,我们可以提示用户检查相关服务、网络或反向代理设置。
如果响应正常返回,我们可以通过以下方式查看请求参数:
if (hasResponse) { tests[`[INFO] 请求参数(超时没返回时不解析):${JSON.stringify(request.data)}`] = true;} 这个函数会将请求参数以JSON格式打印出来,方便我们检查请求是否正确发送了参数。
对于返回的JSON数据,我们可以通过以下方法进行解析:
try { if (hasResponse) { var json = JSON.parse(responseBody); } catch (err) { tests['服务端没返回合法的JSON格式,请检查相关服务、网络或反向代理设置(以下跳过其他断言)'] = false; tests[`[INFO] 返回:${responseBody}`] = true; console.error(err); }} 如果JSON解析失败,表示服务器返回的数据不是合法的JSON格式,我们可以提示用户检查相关服务、网络或反向代理设置。
为了确保返回的数据类型符合预期,我们可以使用以下函数进行类型验证:
var assertType = (name, value, type) => { let isType = (type === 'array') ? Array.isArray(value) : typeof value === type; tests[`${name}为${type}(实际值:${value})`] = isType;}; 这个函数会检查指定名称的返回元素是否为指定类型,并记录结果。
为了确保返回的元素值与预期值一致,我们可以使用以下函数进行值验证:
var assertEqual = (name, actual, expected) => { tests[`${name}等于${expected}(实际值:${actual})`] = actual === expected;}; 这个函数会检查返回的元素值是否与预期值相等,并记录结果。
为了检查返回的元素值是否与预期值不一致,我们可以使用以下函数:
var assertNotEqual = (name, actual, expected) => { tests[`${name}不等于${expected}(实际值:${actual})`] = actual !== expected;}; 这个函数会检查返回的元素值是否与预期值不一致,并记录结果。
通过以上函数,我们可以方便地对Postman测试脚本中的请求和响应进行全面验证,确保测试结果的准确性和可靠性。
转载地址:http://yxxfk.baihongyu.com/