黑马程序员——接口测试——day03

目录:

  1. Potman断言
    1. Postman断言简介
    2. Postman常用断言
      1. 断言响应状态码
      2. 断言包含某字符串
      3. 断言JSON数据
    3. Postman断言工作原理
  2. Postman关联
    1. 简介
    2. 实现步骤
    3. 核心代码
    4. 创建环境
    5. 案例1
    6. 案例2
  3. Postman参数化
    1. 简介
    2. 数据文件简介
    3. 编写数据文件
      1. CSV文件
      2. JSON文件
    4. 导入数据文件到postman
    5. 读取数据文件数据

1.Potman断言

Postman断言简介
  • 让Postman工具代替人工自动判断预期结果和实际结果是否一致
  • 断言代码书写在Tests标签页中。查看断言结果Test Results标签页
Postman常用断言
断言响应状态码

Status code: Code is 200

 

 

断言包含某字符串

Response body: Contains string

 

断言JSON数据

Response body: JSON value Check

 

 

Postman断言工作原理

2.Postman关联

简介
  • 当接口和接口之间,有依赖关系时,需要借助postman关联技术,来实现。
  • 如:登录接口返回的令牌数据,被添加员工接口依赖。
  • 添加员工接口返回员工id,被查询员工接口依赖。
实现步骤

假定:接口B产生的数据,被接口A依赖。

  1. 发送接口B请求,获取响应数据。
  2. 将响应数据,放入公共容器(全局变量、环境变量)中
  3. 接口A从公共容器中,提取数据,发送请求。

核心代码

创建环境
  • 全局变量:在整个postman中都可以使用的变量。不需要单独创建环境。
  • 环境变量:在特定的环境下,才能使用的变量。需要给此变量创建单独的环境。

 

 

 

案例1

使用postman关联,实现下面案例

  • 从获取天气接口,http;://www.weather.com.cn/data/sk/101010100.html
  • 获取返回结果中的城市名称
  • 调用百度搜索接口: http://www.baidu.com/S?wd=北京,把获取到的城市名称,如:北京,作为请求参数

思路:

  1. 发送获取天气请求,获取响应结果
  2. 从响应结果中,拿到城市名,存入全局变量
  3. 百度搜索接口从全局变量中,取城市名,发送搜索请求。

Tests代码:

 

 

案例2
  • 使用postman关联技术,实现添加员工接口。
  • 登录成功,返回的“令牌"被添加员工接口依赖。
  • 思路:
    • 1.发送登录请求(必须登录成功),获取响应结果
    • 2.从json响应结果中,提取data值。拼接上“Bearer ”前缀。
      • 注意:Bearer单词不能拼错,首字母必须大写,只有一个空格
    • 3.将拼接无误的令牌,存入环境变量。从“眼睛”图标查看。
    • 4.添加员工接口,从环境变量中,提取令牌。设置到请求头中,作为Authorization的值。
    • 5.填写添加员工接口其他信息(post、URL、请求体),发送请求。

 

 

 

 

3.Postman参数化

简介
  • 什么是参数化:
  • 将测试数据,组织到数据文件中,通过脚本的反复迭代,使用不同的数据,达到测试不同用例的目标。
  • 应用场景:
    • 一般在测试同一个接口的不同测试点时,只有测试数据不同。考虑使用参数化。
数据文件简介
  • CSV:
    • 优点:数据组织格式简单
    • 缺点:
      • 1.不能测试bool类型。因为postman读取csv后,将所有非数值类型数据,自动添加""变为字符串
      • 2.不能存储复杂数据类型(元组、列表、字典)。
      • 3.不能实现参数测试。
    • 应用场景:数据量较大,数据组织格式简单。

 

  • JSON:
    • 优点:
      • 1.可以测试bool类型
      • ⒉能使用复杂数据类型
      • 3.可以实现参数测试。
    • 缺点:相同数据量,json文件要远大于csv文件。
    • 应用场景:数据量较少,数据组织格式复杂。需要进行参数测试! 

 

编写数据文件
CSV文件

JSON文件

 

导入数据文件到postman

 

 

读取数据文件数据

理论

根据使用位置不同,有两种方法。

  • 第一种:请求参数(请求行、请求头、请求体)中,使用数据文件中的数据
    • csv文件:{{字段名}};json文件:{{键名}
  • 第二种:代码(Tests)中,使用数据文件中的数据
    • 使用postman内置的关键字data,索引字段名或键名
    • csv文件:data.字段名;json文件: data.键名

案例

需求:批量查询手机号所属运营商,校验运营商数据正确性

接口: http:/lcx.shouji.360.cn/phonearea.php?number=13012345678

测试数据:

手机号:13012345678 运营商:联通 手机号:13800001111 运营商:移动 手机号:18966778899 运营商:电信

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/704455.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

杂题——亲密数

题目描述 两个不同的自然数A和B,如果整数A的全部因子(包括1,不包括A本身)之和等于B;且整数B的全部因子(包括1,不包括B本身)之和等于A,则将整数A和B称为亲密数。求3000以内的全部亲密数。 输入格式 无 输出格式 3000以内…

【AHK】68键键盘键位布局优化/esc改退格键/回车键

本人习惯使用~作为退格键,但是由于keychron 68键的布局只能用esc平替~来修改,然后也将回车键通过alt和大小写锁定键一起触发 esc::bs ;次步骤与下面步骤相对应,如果是用send bs方式则下面的不生效^esc:: ;通过建立 保留esc功能 send {esc} re…

啊丢的刷题记录手册(洛谷题单排序篇)

1.洛谷题P1923 求第k小的数 题目描述 输入 n&#xff08;1≤n<5000000 且 n 为奇数&#xff09;个数字ai​&#xff08;1≤ai​<109&#xff09;&#xff0c;输出这些数字的第 k 小的数。最小的数是第 0 小。 请尽量不要使用 nth_element 来写本题&#xff0c;因为本题…

换档控制支架的尺寸优化

前言 本示例使用优化模块&#xff0c;通过在保持原始重量的同时改变壳体厚度&#xff0c;使冲压钣金支架中的应变能之和最小化&#xff08;使刚度最大化&#xff09;。 本页讨论 前言应用描述Abaqus建模方法和仿真技术文件参考 应用描述 本示例说明了汽车变速箱连杆中使用的…

亿道丨三防平板pad丨三防平板是指哪三防丨三防工业级平板电脑

三防工业级平板电脑成为许多行业中的重要工具。本文将介绍三防工业级平板电脑的特点以及其在各个领域中的广泛应用。 三防工业级平板电脑的特点 三防工业级平板电脑是指具备防水、防尘和防震功能的平板电脑。这些特点使得它们能够在恶劣环境中工作&#xff0c;如沙尘飞扬的工地…

sockaddr结构体、sockaddr_in结构体和gethostbyname函数

sockaddr结构体 sockaddr结构体是在网络编程中经常使用的一个数据结构&#xff0c;用来表示套接字地址。它是一个通用的地址结构&#xff0c;可以用于不同的协议&#xff08;如IPv4、IPv6、UNIX等&#xff09;。 在C语言中&#xff0c;sockaddr结构体定义如下&#xff1a; s…

交换两个整数

交换两个整数 题目描述&#xff1a;解法思路&#xff1a;解法代码&#xff1a;运行结果&#xff1a; 题目描述&#xff1a; 写⼀个函数Swap&#xff0c;可以交换两个整数的内容。注意必须实现成函数完成。 输入2个整数&#xff0c;调用自定义函数Swap&#xff0c;完成2个整数的…

C++面试 -操作系统-代码能力:用户态和内核态的基本概念、区别

目录 一、基本概念 概念&#xff1a; 区别&#xff1a; 二、Windows示例 基础介绍 用户态到内核态的切换过程&#xff1a; 程序实例 三、Linux示例 特权级别&#xff1a; 用户态到内核态的切换过程&#xff1a; 调度和中断处理&#xff1a; 程序实例 总结 在操作系…

Java多线程面试题(三)

Java多线程面试题&#xff08;三&#xff09; 前言1、Thread 类中的 yield 方法有什么作用&#xff1f;2、Java 线程池中 submit() 和 execute()方法有什么区别&#xff1f;3、Java 中的 ReadWriteLock 是什么&#xff1f;4、可以直接调用 Thread 类的 run ()方法么&#xff1f…

【升级JDK21】遇到:服务配置文件不正确, 或构造处理程序对象

RROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile(default-compile) on project tr-public-opinion-collector-start: Compilation failure [ERROR] 服务配置文件不正确, 或构造处理程序对象javax.annotation.processing.Processor:…

【HarmonyOS】鸿蒙开发之Stage模型-基本概念——第4.1章

Stage模型-基本概念 名词解释 AbilityStage:应用组件的“舞台“ UIAbility:包含UI界面的应用组件&#xff0c;是系统调度的基本单元 WindowStage:组件内窗口的“舞台“ Window&#xff1a;用来绘制UI页面的窗口 HAP:Harmony Ability Package(鸿蒙能力类型的包) HSP:Harmony Sh…

C++17之折叠表达式

相关文章系列 深入理解可变参数(va_list、std::initializer_list和可变参数模版) 目录 1.介绍 2.应用 2.1.使用折叠表达式 2.2.支持的运算符 2.3.使用折叠处理类型 3.总结 1.介绍 折叠表达式是C17新引进的语法特性。使用折叠表达式可以简化对C11中引入的参数包的处理&…

合泰杯开发板HT66F2390入门教程(点亮LED灯)——获得成就:点灯大师

前言 前不久报名了合泰杯竞赛项目&#xff0c;然后手上也是有一个HT66F2390的开发板&#xff0c;我就打算先从点灯开始&#xff0c;学习一个新的芯片第一步都是先成为点灯大师。 一开始&#xff0c;我在网上搜寻了许多的代码示例&#xff0c;希望能够顺利实现LED的控制。然而&…

LeetCode第七题: 整数反转

题目描述 给你一个 32 位的有符号整数 x​ &#xff0c;返回将 x​ 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−2^31, 2^31 − 1]​ &#xff0c;就返回 0。 假设环境不允许存储 64 位整数&#xff08;有符号或无符号&#xff09;。 示例 …

软考笔记--企业资源规划和实施

企业资源是指企业业务活动和战略运营的事物&#xff0c;包括人、财和物&#xff0c;也包括信息资源&#xff0c;同时也包括企业的内部和外部资源。企业资源可以归纳为物流&#xff0c;资金流和信息流。企业资源规划&#xff08;ERP&#xff09;是只建立在信息技术基础上&#x…

如何卸载Erlang以及RabbitMQ

参考以下两篇文章 https://blog.csdn.net/m0_49605579/article/details/130196536 Windows如何完全卸载RabbitMQ和Erlang_删除注册表hkey_local_machine\software\ericsson\erlang\e-CSDN博客 首先我是按照链接一的操作进行了卸载&#xff0c;但是Erlang的安装目录一直删除不…

Android 8.1 Power电源键增加Home键功能

Android 8.1 Power电源键增加Home键功能 近来接到客户需求&#xff0c;想要将电源键Power增加Home键功能&#xff0c;即当前页面在非Launcher时按下Power电源键&#xff0c;跳转到Launcher页面&#xff0c;具体修改参照如下&#xff1a; /frameworks/base/services/core/java…

铭瑄科技——为星闪技术发展与应用带来新推力

随着智能化生活逐渐普及&#xff0c;无线通信不仅是不仅是信息时代的重要基础设施&#xff0c;而且是推动社会向智能化发展的核心力量之一&#xff0c;其中短距无线通信更是推动未来智能化发展的关键。 为积极推动未来硬件智能化、产业智能化发展&#xff0c;铭瑄正式宣布成为星…

sql-函数

函数&#xff1a;一段可以直接被另一段程序调用的程序或代码。 字符串函数 函数功能CONCAT(s1, s2, …, sn)字符串拼接&#xff0c;将s1, s2, …, sn拼接成一个字符串LOWER(str)将字符串全部转为小写UPPER(str)将字符串全部转为大写LPAD(str, n, pad)左填充&#xff0c;用字符…

AI:141-利用自然语言处理改进医疗信息提取与分类

🚀点击这里跳转到本专栏,可查阅专栏顶置最新的指南宝典~ 🎉🎊🎉 你的技术旅程将在这里启航! 从基础到实践,深入学习。无论你是初学者还是经验丰富的老手,对于本专栏案例和项目实践都有参考学习意义。 ✨✨✨ 每一个案例都附带关键代码,详细讲解供大家学习,希望…