Python接口自动化 —— Web接口!

news2024/12/22 12:02:47

1.2.1 web接口的概念   

这里用一个浏览器调试工具捕捉课程管理页面请求作为例子:

图片

当请求页面时,服务器会返回资源,将协议看做是路的话,http可以看做高速公路,soap看做铁路传输的数据有html,css,javascript或图片、视频、音乐等文件,看做公路运输的货物,比如水果、蔬菜等。

这些数据会以一定的格式进行封装,比如将货物装入集装箱、纸箱等,这就是数据的格式,XML/JSON/CSV,目前实用多的是http协议和JSON是数据格式。

1.2.2 请求request和响应response  网络应用的B/S和C/S架构  

C/S架构全称为:Client-Server客户端-服务器端架构,一共两层。

客户端向服务器端发出请求Request,服务器端响应客户端的请求,发出响应Response,响应中就包含了客户端所需的数据等信息。

图片

B/S架构被称为:Browser-Server浏览器端-服务器端架构,一共三层。

浏览器端向Web服务器发出请求Request请求网页,Web服务器收到客户端请求后向后端的数据库服务器发出请求Request请求网页的数据,数据库服务器响应Web服务器的请求,发出包含网页数据信息的响应Response,然后Web服务器收到数据库服务器的响应,将网页数据的其它的网页文件等信息发送给浏览器端, 后由浏览器对以上文件进行解析,变成我们看到的页面。

图片

我们实施接口测试的目的就是替代客户端或浏览器端和Web服务器向服务器端或数据库服务器发出请求。

Request,并检查服务器或数据库服务器的Response的数据信息。

站在测试阶段来看,接口测试属于集成测试阶段,一般位于单元测试之后,在前端没有开发完毕,但是后端已经开发完成的阶段,在系统测试阶段之前,有些时候接口测试也被称作前后端的联调测试。

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】

请求Request的组成结构

图片

                                                请求Request由三部分组成:

图片

请求行: 由请求方法和URL组成  请求方法由HTTP协议提供,主要有GET、POST等方法。

 URL:Uniform/Universal Resource Locator 的缩写,统一资源定位符

请求报头Header:允许客户端向服务器传递请求的附加信息以及客户端自身的信息。

请求正文Body:请求的信息正文,常用的数据格式有JSON、XML、form等。

例如:

 JSON:

      {"title":"test","sub":"001"}

图片

 form:

 title=test&sub=1

 响应Response的组成结构

图片

                                                         响应Response由三部分组成:

图片

状态码Status code: 所有HTTP响应的第一行都是状态行,依次是当前HTTP版本号,3位数字组成的状态代码,以及描述状态的短语,彼此由空格分隔。例如:200 响应报头Header:响应头允许服务器传递不能放在状态行中的附加响应信息,以及关于服务器的信息,和对request-URI 所标识资源下一步访问的信息响应正文Body:

 服务器返回请求的数据,一般是JSON或XML格式的数据,例如:

图片

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

最后: 可以在公众号:自动化测试老司机 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

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

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

相关文章

新游戏-开箱H5游戏【无限贝拉/疯狂骑士团】最新整理Linux手工服务端+详细搭建教程

小编教大家搭建游戏啦 一款H5奉上 先上图 然后再看教程 90GM基地:www.t1gm.com 默认解压密码:www.t1gm.com 本教程只限于技术研究使用,请勿用于商业用途。 本资源由90GM基地独家提供 90GM基地交流群:639140260 ★★★★…

Vue2 —— 学习(七)

目录 一、TodoList 案例(第一版) (一)组件化编码流程 1.实现静态组件 2.显示动态数据 (二)增加元素 (三)多选框状态确定 (四)删除元素 (五…

Boost电感的作用

Boost电感在Boost升压电路中起着关键的作用。Boost电路是一种DC-DC电源转换器,其主要功能是将低电压直流(DC)信号转换为高电压直流(DC)信号。Boost电感在这个过程中起着平滑电流、储存能量和提高电路效率的作用。 具体…

【yolo数据集合并方法】

yolo数据集合并方法 1.数据集容2.数据集合并 1.数据集容 包含训练集、验证集和测试集。 每一个数据集中包含图像文件夹和标签文件夹。 yaml文件中定义了配置参数,包括目标识别的class类别: 2.数据集合并 需要修改labels文件夹下txt文件class信息&…

Vision Pro 零基础教程:1.机器视觉概述

文章目录 机器视觉简介机器视觉的发展历史机器视觉的结构组成机器视觉的应用工业相机分类1. 按传感器类型分类:2. 按分辨率分类:3. 按扫描方式分类:4. 按输出信号类型分类:5. 按应用领域分类:6. 按接口类型分类&#x…

TLS v1.3 导致JetBrains IDE jdk.internal.net.http.common CPU占用高

开发环境 GoLand版本:2022.3.4 问题原因 JDK 中的 TLS v1.3 实现引起 解决办法 使用 SOCKS 代理代替HTTP代理 禁用 Space 和 Code With Me 插件 禁用 TLS v1.3,参考:https://stackoverflow.com/questions/54485755/java-11-httpclient-…

IEDA 的各种常用插件汇总

目录 IEDA 的各种常用插件汇总1、 Alibaba Java Coding Guidelines2、Translation3、Rainbow Brackets4、MyBatisX5、MyBatis Log Free6、Lombok7、Gitee IEDA 的各种常用插件汇总 1、 Alibaba Java Coding Guidelines 作用:阿里巴巴代码规范检查插件,…

Spring-dataSource事务案例分析-使用事务嵌套时,一个我们容易忽略的地方

场景如下: A_Bean 中的方法a()中调用B_Bean的b();方法都开启了事务,使用的默认的事务传递机制(即:属于同一事务); 如下两种场景会存在较大的差异: 在b()方法中出现了异常,在b()中进…

只用键盘的技巧

技巧一:将常用软件固定在任务栏使用winnum/winT(shift)打开 技巧二:winX快捷键(显示快捷键的快捷键) ALT F4    关闭当前应用程序 技巧三:使用好Chrome快键键 ctrl h;历史纪录。 ctrl shift esc&am…

致远互联FE协作办公平台 editflow_manager.jsp 存在SQL注入漏洞

0x01 免责声明 请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删…

多ip证书实现多个ip地址https加密

在互联网快速发展的现在,很多用户会使用由正规数字证书颁发机构颁发的数字证书,其中IP数字证书就是只有公网IP地址网站的用户用来维护网站安全的手段。由于域名网站比较方便记忆,只有公网IP地址的网站是很少的,相应的IP数字证书产…

PlistEdit Pro for Mac激活版:强大的Plist文件编辑工具

PlistEdit Pro for Mac是一款专为Mac用户设计的强大Plist文件编辑工具。Plist文件是苹果公司开发的一种XML文件格式,用于存储应用程序的配置信息和数据。这款软件为用户提供了直观、易用的界面,使编辑和管理Plist文件变得轻松简单。 PlistEdit Pro for M…

Mybatis-plus中的分页操作

Mybatis-plus中的分页操作 1.导入Mybatis-plus依赖2.创建mybatis配置类3.参数 1.导入Mybatis-plus依赖 因为是一个springboot项目&#xff0c;其中的pom.xml文件内容如下&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <project xmlns&q…

深入理解JVM中的G1垃圾收集器原理、过程和参数配置

码到三十五 &#xff1a; 个人主页 心中有诗画&#xff0c;指尖舞代码&#xff0c;目光览世界&#xff0c;步履越千山&#xff0c;人间尽值得 ! 在Java虚拟机&#xff08;JVM&#xff09;中&#xff0c;垃圾收集&#xff08;GC&#xff09;是一个自动管理内存的过程&#xff…

【kubeEdge】离线部署

部署 kubeEdge 在线部署 在线方式部署直接执行以下命令&#xff0c;会联网下载需要的安装文件执行安装 $ keadm init --advertise-address{ip} --kubeedge-version{version} --kube-config{config_path}&#xff0c; 离线部署 离线准备工作 所有下载操作均在可以联网的机…

2024年在Vim中开发vue2+java

neovim 0.5刚出来的时代&#xff0c;那时刚有lua插件我很狂热。每天沉迷于打造自己的IDE之中。写过一堆相关的博客&#xff0c;也录过一些视频教程。后来发现neovim的接口和插件更新的很快&#xff0c;导致配置文件要不定期的修改&#xff0c;才能保证新版本的插件的适配。我也…

近端安全互联样例使用指导

样例介绍 本样例基于rk3568开发板&#xff0c;通过封装openharmony安全子系统deviceauth组件提供的能力&#xff0c;实现了一组可用于设备间快速建立可信认证和连接的接口&#xff0c;通过预先定义关系网&#xff0c;在设备初始化阶段完成端端设备间的认证&#xff0c;构建安全…

探索设计模式的魅力:融合AI大模型与函数式编程、开启智能编程新纪元

​&#x1f308; 个人主页&#xff1a;danci_ &#x1f525; 系列专栏&#xff1a;《设计模式》 &#x1f4aa;&#x1f3fb; 制定明确可量化的目标&#xff0c;坚持默默的做事。 ✨欢迎加入探索AI大模型与函数式编程模式融合之旅✨ 在编程世界的广阔疆域里&#xff0c;两大…

mamba->jamba

1 mamba解决什么问题 Transformer的问题&#xff0c;其计算复杂度与序列长度的平方成正比&#xff0c;导致在处理长序列时效率低下。 Transformer 的注意力创建一个矩阵&#xff0c;将每个 token 与之前的每个 token 进行比较。矩阵中的权重由 token 对之间的相关性决定。 长度…

B树(B-tree)

B树(B-tree) B树(B-tree)是一种自平衡的多路查找树&#xff0c;主要用于磁盘或其他直接存取的辅助存储设备 B树能够保持数据有序&#xff0c;并允许在对数时间内完成查找、插入及删除等操作 这种数据结构常被应用在数据库和文件系统的实现上 B树的特点包括&#xff1a; B树为…