IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 测试小白的心酸路之接口测试初体验 -> 正文阅读

[开发测试]测试小白的心酸路之接口测试初体验

接口测试的“顶级理解”

应届生培训完毕我被分配到接口测试组,说到接口测试这个名词我听到过无数次,但是真要我具体说出来接口测试是什么我还真说不清楚,经过不断的查阅资料,我总算是明白了一点所谓的接口测试,请听我娓娓道来。

一、接口测试的定义

接口测试是测试系统组件间接口的一种测试。接口测试主要是用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系,同时需要兼顾测试接口参数传递的正确性,接口功能实现的正确性,输出结果的正确性,以及对各种异常情况的容错处理的完整性和合理性。
但在我个人理解来看,接口测试只不过是数据传递的一种表现而已

二、请求模型和请求结构

请求模型
看下图中“A”线,可以理解为接口就是一个电灯的开关,它在接口里面给你提供了一个参数,参数的值一个是“开”,一个是“关”。
在这里插入图片描述
? 说起来,怎么才能让灯亮?一个灯头接两根线,一根线接火线,一根线接零线这时灯就亮了。反之,不接零线、火线灯就灭了。
? 其实接口呢,就把这些复杂的操作简化了,让你看到的就只有一个开关,而你来操作这个开关就好了。我们做接口测试也只需要测试这个开关就完成任务了,接口测试就是这么简单。

当你访问“http://127.0.0.1:8080/light?opt=open”,让零线、火线连通,此时灯亮。
当你访问“http://127.0.0.1:8080/light?opt=close”,让零线、火线断开,此时灯灭。

请求结构
? 看到这里我们大致就明白了接口测试是怎么一回事了。接下来需要理解一下HTTP的URL是怎么组成为一个接口的。如图:
在这里插入图片描述

一个URL就是一个接口,接口大致会分为一下几个部分:
请求协议:
1.http — 普通的http请求
2.https — 加密的http请求,传输数据更加安全
3.ftp — 文件传输协议,主要用来传输文件

请求IP:就是指提供接口的系统所部署的服务器地址

请求端口:如果不填端口,默认是80,否则需要填写端口号

接口路径:指系统提供的接口在什么位置

接口参数:参数在接口路径后,用“?”来表示路径地址完了,剩下的都是参数了,用“&”来区分参数个数,

如下示例:

http://127.0.0.1:8080/light?opt=open&use=yy&pwd=123456

假设要操作这个灯,需要用户密码,则可以增加新的参数”use”、”pwd”,用”&”来隔开。可以看到这个示例有3个参数:

  • “opt”:”open”
  • “use”:”yy”
  • “pwd”:”123456”

接口HTTP参数

  • http请求方式

     GET --- 通过请求URI得到资源
     POST --- 用于添加新的内容
     PUT --- 用于修改某个内容
     DELETE --- 删除某个内容
     CONNECT --- 用于代理进行传输,如使用SSL
     OPTIONS --- 询问可以执行哪些方法
     PATCH --- 部分文档更改
     PROPFIND (wedav) --- 查看属性
     PROPPATCH (wedav) --- 设置属性
     MKCOL (wedav) --- 创建集合(文件夹)
     COPY (wedav) --- 拷贝
     MOVE (wedav) --- 移动
     LOCK (wedav) --- 加锁
     UNLOCK (wedav) --- 解锁
     TRACE --- 用于远程诊断服务器
     HEAD --- 类似于GET, 但是不返回body信息,用于检查对象是否存在,以及得到对象的元数据
    
  • http请求头

请求头包含许多有关的客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器所用的语言,请求正文的长度。示例:

	Accept:image/gif.image/jpeg./
	Accept-Language:zh-cn
	Connection:Keep-Alive
	Host:localhost
	User-Agent:Mozila/4.0(compatible:MSIE5.01:Windows NT5.0)
	Accept-Encoding:gzip,deflate.
  • http请求体

请求体就是请求等正文了,可以有很多种请求体。

	json格式
	xml格式
	html格式
	二进制格式( 多数用于图片 )
	字符串格式

三、接口测试的流程

第一步,设计操作步骤。
操作步骤就是请求,有一些请求是是单独的,有些请求是多个请求前后有联系的,这种情况就需要创建关联,。那么我们需要了解请求的格式,规范以及如何做关联。soapUI,postman,jmeter里,都有关联。
第二步,设计数据用例。
建议将数据用例写到Excel文档里,然后让工具读取Excel。Excel里有几组数据用例,就执行几次。循环执行(自动化),就可以让每一个用例被执行一次,那么每一个测试场景也就被运行到了。
第三步:断言。
也就是提前将预期结果写入到工具中,让工具自动化判断结果是否正确。不同的工具叫法不同,soapUI和Jmeter中叫做断言,postman中叫做tests。
第四步:执行并检查测试结果。
执行很简单,对测试结果进行分析的话就需要了解协议。知道发出去了什么,返回了什么,才能够知道,到底哪个环节出了问题。

下一篇我将会分享接口测试用例的设计,测试用例在测试环节中占了很大一个比重,非常非常非常的重要~

仰天大笑出门去,我辈岂是蓬蒿人

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-08-15 15:53:24  更:2021-08-15 15:54:35 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 21:46:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码