首页 > 其他分享 >Postman 断言和返回数据提取

Postman 断言和返回数据提取

时间:2023-01-02 13:33:29浏览次数:37  
标签:ns3 提取 Postman 断言 接口 access token 全局变量 pm

Postman 接口测试

一、环境变量和全局变量

1.1 环境变量

环境变量是用来标识不同的测试环境的,例如可以有沙箱环境、预生产环境和生产环境。在postman中,可以通过创建环境变量按钮来不同的变量。
不同的开发,测试,生产环境
通过双大括号{{url}}来引用环境变量

1.2 全局变量

全局变量是指可以在任意接口引用的变量,其中环境变量也是全局变量的一种形式。通过双大括号的形式来引用。

{{变量名}}

二、接口关联

2.1 json提取器实现接口关联

第一个接口
//通过json提取器提取access_token值
//把返回的字符串格式数据转换为对象的形式
var result = JSON.parse(responseBody);
//把access_token设置为全局变量
pm.globals.set('access_token',result.access_token);
第二个接口
{{access_token}}

2.2 正则表达实现接口关联

第一个接口
//通过正则表达式提取器实现接口关联,match匹配,.*?匹配任意字符
var result = responseBody.match(new RegExp('"access_token":"(.*?)"'))
console.log(result[1])
//把access_token设置为全局变量
pm.globals.set('access_token',result[1]);
第二个接口
{{access_token}}

2.3 从xml返回的数据中提取关键字

返回信息

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<securityPinTransmission xmlns="http://www.aws.com/mobbed/rolesAndRights">
    <challenge>86E3498793E8D2FA1D2FE3F60A2BFFF6C1FB22B20A29F86B250E0A9003F3293D</challenge>
    <hashProcedureVersion>2</hashProcedureVersion>
</securityPinTransmission>

Tests脚本

//将xml的返回值转为json格式
var DATA = xml2Json(responseBody);
//获取challenge的值,并将其设置为全局变量,按照原来的xml标签对,逐级向下获取
pm.globals.set('challenge',DATA.securityPinTransmission.challenge);

如果xml的标签对中包含特殊字符,如冒号,则不能使用DATA.XX 的方式来获取,需要用中括号+单引号来获取

// 将xml格式转为json格式
var data = xml2Json(responseBody);
//将返回值输出到控制台调试 key=ns3:certificate,需要用['ns3:certificate']来表示,不要加点
console.log(data['ns3:certificate']['ns3:service'][0]['ns1:dirt']['ns1:APN']);
// 定义变量来接收制定的返回值,
var test_dyn = data['ns3:certificate']['ns3:service'][0]['ns1:dirt']['ns1:APN']
// 设置test_dyn为全局变量
pm.globals.set("test_dyn", test_dyn);

2.4 响应断言中使用if判断

判断响应码

if(tests["code is 409"] = responseCode.code === 409){ 

    pm.test("Body matches string", function () {
        pm.expect(pm.response.text()).to.include("The vehicle is already linked to the  user");
    });

}
else{

    pm.test("Status code is 200", function () {
        pm.response.to.have.status(200);
    });
}

标签:ns3,提取,Postman,断言,接口,access,token,全局变量,pm
From: https://www.cnblogs.com/orange2016/p/17019787.html

相关文章

  • Selenium54-提取参数数据
    新建第三版第一子版本脚本文件test_后台_双创_基础设置_赛区管理_添加赛区_case_v3_1.py合并添加赛区有效测试方法test_add_division_success:实现前六条有效测试用......
  • web应用模式 api接口 接口测试工具postman restful规范
    目录web应用模式前后端混合开发前后端分离开发api接口接口测试工具postmanrestful规范(重要)简介主要内容练习web应用模式#前后端混合开发 -bbs项目,页面渲染是在后台完成......
  • VTK_Learning_图像基本操作_彩色图像生成灰度图像_彩色图像成分提取
    1.灰度图像映射vtkImageLuminance负责将一个RGB彩色图像转换为一个单组分的灰度图像。映射公式如下:luminance=0.3*R+0.59*G+0.11*B该公式中,R为输入图像的第一分量(红......
  • Selenium50-提取通用操作方法
    新建第二版测试用例实现代码新建Python文件:test_后台_双创_基础设置_赛区管理_添加赛区_case_v2.py目标:提取通用操作方法。注意:测试文件以test_开头(以_test结尾也......
  • C# 提取Word中插入的多媒体文件(视频、音频)
    在Word中可将文件通过OLE对象嵌入的方式插入到文档,包括Word、excel、PDF、PPT、图片、宏文件、文件包等在内的多种文件类型。对文档中已插入的文档对象,也可通过本文中的方法......
  • Go-22 Golang中空接口和类型断言结合使用的细节
    packagemainimport"fmt"//Golang中空接口和类型断言使用细节typeADDressstruct{ Namestring Phoneint}funcmain(){ varuserinfo=make(map[strin......
  • 字符串的提取与拼接应用
    需求:从在线文件夹下载最新版本的文件存在问题:该文件夹内存在历史版本,而且还有其它文件,增加了下载难度。特点:文件顺序按照更新时间从上到下排序实现思路:①将网页数据写入......
  • 如何在表格中写正则表达式来提取电话号码?
    正则表达式,是描述匹配模式(pattern)的文本字符串,用于搜索和匹配字符串集。简单来说,就是可以通过从一堆字符串里,搜索提取自己想要的内容。Excel网络函数库帮助使用者们在Ex......
  • vep文件转储mp4 文件提取器
    链接:https://pan.baidu.com/s/1dISmTcYeuOYBJajpWWaN1Q?pwd=b8ed提取码:b8ed将vep快速提取器.exe与HRC5.dll放到同一目录内运行vep快速提取器.exe点击选择文件,选择......
  • 正则:零宽断言和负向零宽断言
    ​​http://deerchao.net/tutorials/regex/regex.htm#lookaround​​代码展现packagetest;importjava.util.regex.Matcher;importjava.util.regex.Pattern;publicclass......