接口自动化测试

1、生活中面临的问题:当前我们面临的这个bug修改好了,但是在其他地方又出现了新的bug,如何能够提前发现bug那

 

 1.1 功能测试----是通过页面发送请求

1.2 接口测试---可以直接利用工具向服务器发送数据做一个结果验证

 1.3 功能测试是在联调通过后进行开展的,需要界面,前后端通过后

 1.4 接口测试,后端完成后就可以测试了

 1.5 进阶

1.6 成长发展

1.7 

 

 2、熟悉项目

 客户端发送数据向接口

 3、合同管理

 4、怎么开展接口测试工作

4.1 第一个做接口需求分析,也叫做接口文档解析,这里面会记录一些接口的地址信息和参数信息

 4.2 作为测试人员设计测试用例

 4.3 接口测试用工具或代码来进行一个开发工作

4.4 运行,将bug提交给公司的权限管理系统,这里你也可以设置公司应用管理系统

5、客达天下是什么

 6、当网上购物的时候,我们需要提供我们的地址,我们才能够收到自己的包裹

 6. 1 url的部分

6.2 这个项目是http协议的

 6.3 地址后面用的是默认端口号:80,

 6.4 如果你写错了端口号,那么他就会呈现给你看,协议部分默认端口是可以省略的,路径,如果你想要某一个文件,某一个图片,只能用path进行访问

 6.5 ?后面是参数部分

 6.6 url由五部分进行组成

 7、HTTP请求分为HTTP请求和HTTP响应

7.1  请求行部分

7.2HTTP常用的四种请求操作

 7.3 请求行的位置第二行到空白之间

7.4 请求头-通知服务器客户端请求信息,他的数据是有特点的,是键值对组成的,一行一对组成的 

7.5 标红的部分在接口测试的时候,经常碰到,Content-Type用来规定第三方的数据类型

 7.6 Content-type请求体数据类型

 7.7 请求体数据类型,他的数据类型是由context-type来决定的

7.8 请求体用来传递用户名和密码

 7.9请求体跟我们的post是有关系的,一般在post或者get中会使用到请求体,具体数据类型由content-Type和Content-Length进行决定的 

 8、响应三部分内容

8.1 第一部分响应-状态行,通过抓包工具,把服务器响应的数据给拿到,响应行的内容,它主要描述服务器的处理结果

 9、HTTP协议,12345系列

9.1 常见响应状态码

10、响应第三部分之响应头

 10.1 响应体

10.2 响应体,响应体数据有很多的内容,数据

11、抓包获取客达天下项目的登录接口 

 12、charles---Charles简介Charles是在PC端常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。这是一个请求数据包

 12.1 content数据格式,现在raw就是用来记录响应数据

13、请求部分的要求是,记录行头体的位置

13.1请求行

 13.2 请求头

 13.3 空行之后是请求体

14响应行,第一行

14.1 响应头

14.2 响应体

14.3 请求url,在请求行里面

 14.4 请求方法在请求行里面,

14.5 请求数据类型在请求头里面

14.6 这个参数取不同的值,就按照对应的值来决定的,这个数据时json格式的,因此我们的请求数据

14.7 按照json数据来进行组织

15、响应状态码,在第一行的状态里面

 15. 1 响应数据类型也是由context-type进行决定的

 15.2 响应体空行之后的

16、常见的请求方法

16.1 常见的响应状态码

17、接口规范

 17.1 前端页面--------前端工程师完成用户操作所实现的前端页面

17.2 后端工程师会对数据进行业务处理和提交给数据库相关的操作

17.3 在这个过程中,后端工程师会提供一个接口,将数据提供给前端,并返回一个相关处理结果  

18、两种接口规范,常见的两种 

18.1 针对用户的增删改查的事例,来修改一下:我们把开发实例的接口拿过来 

18.2 我们可以通过字符串得知这些接口作用

19、传统接口------常用post和get方法,而且处理成功之后,大多状态码用200:

20、当前互联网公司大多用restful风格

 21、restful的接口实例:(只定义了操作对象)

22、在资源集合去取, 指定你操作的东西

23、我怎么知道你要做什么事情,这里利用的是请求方式

23.1操作码也不一样

24 传统风格和restful风格的不同

25、Postman实现接口测试,我们拿到一个项目之后,先测业务流程模块,确保核心功能完善,再测细枝末节,所以我们一般先测业务流程,那业务流程怎么测,以客达天下合同新增业务为例

26、业务流程图,业务功能得先有业务流程,你要想业务新增,你得遵循以下业务流程

27、如何设计业务流程测试用例,首先根据流程图,找出业务路径,首先你看到这个流程图,先想有几条业务路径

, 

28、第一条业务流程路径

28.1 登陆失败后的业务流程路径

 28.2  课程添加失败后的业务流程

28.3 合同上传失败

 28.4 合同新增失败的流程图

29 他所新增的路径给他统计下来了

29.1 登录失败

29.2 第二条路径

 29.3 第三条路径

 29.4 合同新增失败

 29.5 第五条路径,有了这些路径之后,我们会进一步理解,相关的模块,然后转化为对应的测试用例

30 合同新增业务----设计测试用例,如何转化为测试用例,首先看一下我们的接口文档:

31、登录接口文档包括

31.1 她会记录登录接口的路径和地址

 31.2 请求方法,以及参数信息

 31.3 接口文档由后端工作人员进行编写,我们再开发时,要学会获取到接口文档

32、这些文档要怎么去看,首先我们要看一下接口的依赖关系,比如我们要测试一个购物车接口,用户需不需先登录,如果需要先登录,那么我们的购物车接口就依赖于登录接口,

33、我们怎么知道谁依赖于谁那,我们可以通过这些参数,看一下这些参数说明,这些参数的值是从哪里过来的,如果是有接口说明的话,就可以直接看到依赖关系了

34 分析接口请求

34.1不同场景,服务器会给不同的状态码

35 接口文档,记录我们使用的十多个接口

 35.1 比如登录接口

 35.2 以及对象的响应信息

 35.3 大量存在路径,我们需要一一对照一下

36、POSTMAN用于接口用例的调试和执行

36.1请求编辑区,我们大部分时间,是在请求编辑区进行调试和调用的,我们可以利用请求编辑区设置请求方法,请求url,请求头和请求体

37、这里登录成功,我们先获取验证码成功,这里我们先解决获取验证码这一事情,这里获取验证码是一个get请求

37.1 设置的步骤

 37.2 POSTMAN的流程

38、这里成功之后,要看一下测试用例

39 登录接口调试

40、登录接口调试采取的案例

41、先让我们设置一下请求体

41.1 JSON数据设置成功

41.2 设置我们的RAW格式,默认就能调过来

41.3 uuid的值怎么找

41.4 有可能是uuid的值

42 POST如何保存我这里填写的请求数据,摁Ctrl + S,这里可以填写请求的名字

42.1 给他定义文件的名字

 42.2 点击Create

 

43、POSTMAN如何发送请求并查看响应结果

44、postman自动关联,如何实现这里面uuid里的数据自动关联到另一个接口里 

45、登录接口自动关联,解决问题前分析一下思路

45.1现在有两个接口,验证码发送后会得到相应的返回结果

45.2 我们现在拿到uuid的值,拿去了之后要存下来,拿下来之后,就可以把他存下来,类似于python,我们可以将他保存到变量里去,postman提供了一个环境变量的区域

45.3 我们登录接口可以直接从环境变量中得到他的引用数据,用的时候,可以通过引用容器数据

 45.4 POSTMAN使用的是一个称为环境变量的东西,那么环境变量如何去创建那:

 45.5 我们项目去使用的话,我们会去选择一下,这是一个前置动作

46、QA代表测试环境下我们进行测试

 46.1 你要保存的uuid,会自动保存到这

 46.2 那些项目需要用: 我们要回到我们客达天下的地方去用

46.3 选择QA,我们要使用数据

47、具体如何解决,从那个登录接口去解决那个从哪个接口去解决登录数据的问题,我们从哪个技术使用案例

48、如何使用自动关联技术,实现登录成功,pm内置变量,json()方法就可以获得,我们json的响应数据

48.1给他一个数据操作,起了一个名字

49、登录接口要使用的时候,用{{}}去调用就行

49.1 现在有两个接口,一个接口时获取验证码,另一个接口是验证登录成功

50、我们在获取验证码的第一刻,要获得响应数据

51、将拿到数据放到环境变量里去

52、点击获取验证码,但是我们代码写到哪里,写到请求测试区域中的test当中

 

53、将uuid的值进行设置保存

54、将响应数据的uuid给拿到

55、当我们只有一个大括号的时候,我们json.后面再加上参数就可以拿到参数值 

56、将数据提取之后,去哪看呢,当我们设置成功之后,我们应该去哪看,要看这个小眼睛

56.1

57、这里成功的增加了uuid的值

58、点击接口不用写死

59、点击uuid的值 

60、我们成功的获取到了值

61、如何实现postman自动关联技术

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

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

相关文章

专访 BlockPI:共建账户抽象未来的新一代 RPC 基础设施

在传统 RPC 服务板块上,开发者一直饱受故障风险、运行环境混乱等难题的折磨。实现 RPC 服务的去中心化,且保持成本优势和可扩展性,始终是区块链基础设施建设的重要命题之一。从 2018 年观察中心化 RPC 供应商服务现状开始,BlockPI…

VectorStyler for Mac: 让你的创意无限绽放的全新设计工具

VectorStyler for Mac是一款专为Mac用户打造的矢量设计工具,它结合了功能强大的矢量编辑器和创意无限的样式编辑器,让你的创意无限绽放。 VectorStyler for Mac拥有直观简洁的用户界面,让你能够轻松上手。它提供了丰富的矢量绘图工具&#x…

[C++] 模板template

目录 1、函数模板 1.1 函数模板概念 1.2 函数模板格式 1.3 函数模板的原理 1.4 函数模板的实例化 1.4.1 隐式实例化 1.4.2 显式实例化 1.5 模板参数的匹配原则 2、类模板 2.1 类模板的定义格式 2.2 类模板的实例化 讲模板之前呢,我们先来谈谈泛型编程&am…

ABAP 新语法--Data Processing

1. String Template 新语法引入了字符串模板,用于处理字符串连接以及格式转换 字符串模板在 | … | 之间定义,主要分为两部分,固定文本和变量 其中,变量只能在 { … } 内使用,大括号之外的所有字符均作为固定文本使用…

STM32存储左右互搏 I2C总线FATS读写EEPROM ZD24C1MA

STM32存储左右互搏 I2C总线FATS读写EEPROM ZD24C1MA 在较低容量存储领域,EEPROM是常用的存储介质,可以通过直接或者文件操作方式进行读写。不同容量的EEPROM的地址对应位数不同,在发送字节的格式上有所区别。EEPROM是非快速访问存储&#xf…

【Spring 】了解Spring AOP

目录 一、什么是Spring AOP 二、AOP的使用场景 三、AOP组成 四、Spring AOP的实现 1、添加Spring AOP依赖 2、定义切面和切点 3、定义相关通知 五、 AOP的实现原理 1、什么是动态代理 2、 JDK代理和CGLIB代理的区别 一、什么是Spring AOP AOP(Aspect Ori…

HarmonyOS NEXT新能力,一站式高效开发HarmonyOS应用

2023年8月6日华为开发者大会2023(HDC.Together)圆满收官,伴随着HarmonyOS 4的发布,华为向开发者发布了汇聚所有最新开发能力的HarmonyOS NEXT开发者预览版,并分享了围绕“一次开发,多端部署” “可分可合&a…

Spring Boot业务代码中使用@Transactional事务失效踩坑点总结

1.概述 接着之前我们对Spring AOP以及基于AOP实现事务控制的上文,今天我们来看看平时在项目业务开发中使用声明式事务Transactional的失效场景,并分析其失效原因,从而帮助开发人员尽量避免踩坑。 我们知道 Spring 声明式事务功能提供了极其…

面试之快速学习STL-deuqe和list

1. deque deque 容器用数组(数组名假设为 map)存储着各个连续空间的首地址。也就是说,map 数组中存储的都是指针如果 map 数组满了怎么办?很简单,再申请一块更大的连续空间供 map 数组使用,将原有数据&…

css3-grid:grid 布局 / 基础使用

一、理解 grid 二、理解 css grid 布局 CSS Grid布局是一个二维的布局系统,它允许我们通过定义网格和网格中每个元素的位置和尺寸来进行页面布局。CSS Grid是一个非常强大的布局系统,它不仅可以用于构建网格布局,还可以用于定位元素&#xf…

IC流程中 DFT 学习笔记(1)

引言 DFT是ASIC芯片设计流程中不可或缺的环节。其主要目的是在芯片前端设计验证完成后插入一些诸如寄存器链等可供测试的逻辑,算是IC后端设计的范畴。主要是在ASIC芯片流片完成后,通过这些已插入的逻辑,检测流片得到的芯片的制造质量。检测一…

Flink之Partitioner(分区规则)

Flink之Partitioner(分区规则) 方法注释global()全部发往1个taskbroadcast()广播(前面的文章讲解过,这里不做阐述)forward()上下游并行度一致时一对一发送,和同一个算子连中算子的OneToOne是一回事shuffle()随机分配(只是随机,同Spark的shuffle不同)rebalance()轮询分配,默认机…

玩转VS code 之 C/C++ 环境配置篇

PS:俺是菜鸟,整理和踩坑试错花了不少时间,如果这篇文章对您有用的话,请麻烦您留下免费的赞赞,赠人玫瑰,手留余香,码字踩坑不易,望三连支持 上一篇:玩转 VS code 之下载篇…

激活函数总结(十):激活函数补充(Identity、LogSigmoid、Bent Identity)

激活函数总结(十):激活函数补充 1 引言2 激活函数2.1 Identity激活函数2.2 LogSigmoid激活函数2.3 Bent Identity激活函数 3. 总结 1 引言 在前面的文章中已经介绍了介绍了一系列激活函数 (Sigmoid、Tanh、ReLU、Leaky ReLU、PReLU、Swish、…

【Spring系列篇--关于IOC的详解】

目录 面试经典题目: 1. 什么是spring?你对Spring的理解?简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。 2.什么是IoC?你对IoC的理解?IoC的重要性?将实例化对象的权利从程序员…

Rust软件外包开发语言的特点

Rust 是一种系统级编程语言,强调性能、安全性和并发性的编程语言,适用于广泛的应用领域,特别是那些需要高度可靠性和高性能的场景。下面和大家分享 Rust 语言的一些主要特点以及适用的场合,希望对大家有所帮助。北京木奇移动技术有…

Windows上使用FFmpeg实现本地视频推送模拟海康协议rtsp视频流

场景 Nginx搭建RTMP服务器FFmpeg实现海康威视摄像头预览: Nginx搭建RTMP服务器FFmpeg实现海康威视摄像头预览_nginx rtmp 海康摄像头_霸道流氓气质的博客-CSDN博客 上面记录的是使用FFmpeg拉取海康协议摄像头的rtsp流并推流到流媒体服务器。 如果在其它业务场景…

【Axure高保真原型】JS日期选择器筛选中继器表格

今天和大家分享JS日期选择器筛选中继器表格的原型模板,通过调用浏览器的日期选择器,所以可以获取真实的日历效果,具体包括哪一年二月份有29天,几号对应星期几,都是真实的,获取日期值后,通过交互…

Unity C# 之 Azure 微软SSML语音合成TTS流式获取音频数据以及表情嘴型 Animation 的简单整理

Unity C# 之 Azure 微软SSML语音合成TTS流式获取音频数据以及表情嘴型 Animation 的简单整理 目录 Unity C# 之 Azure 微软SSML语音合成TTS流式获取音频数据以及表情嘴型 Animation 的简单整理 一、简单介绍 二、实现原理 三、注意事项 四、实现步骤 五、关键代码 一、简…

JVS开源基础框架:平台基本信息介绍

JVS是面向软件开发团队可以快速实现应用的基础开发脚手架,主要定位于企业信息化通用底座,采用微服务分布式框架,提供丰富的基础功能,集成众多业务引擎,它灵活性强,界面化配置对开发者友好,底层容…